位置: 编程技术 - 正文

轻松创建nodejs服务器(2):nodejs服务器的构成分析(node.js创建服务)

编辑:rootadmin

推荐整理分享轻松创建nodejs服务器(2):nodejs服务器的构成分析(node.js创建服务),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:如何创建node项目,搭建nodejs,创建nodejs项目的步骤,node创建服务,如何使用nodejs创建web服务器,node.js创建服务,如何使用nodejs创建web服务器,node.js创建服务,内容如对您有帮助,希望把文章链接给更多的朋友!

紧接上一节,我们来分析一下代码:

第一行请求(require)Node.js自带的 http 模块,并且把它赋值给 http 变量。

接下来我们调用http模块提供的函数: createServer 。

这个函数会返回一个对象,这个对象有一个叫做 listen 的方法,这个方法有一个数值参数,指定这个HTTP服务器监听的端口号。

为了提高可读性,我们来改一下这段代码。

原来的代码:

可以改写成:

我们定义了一个onRequest()函数,并将它作为参数传给createServer,类似回调函数。

轻松创建nodejs服务器(2):nodejs服务器的构成分析(node.js创建服务)

我们给某个方法传递了一个函数,这个方法在有相应事件发生时调用这个函数来进行回调,我们把这叫做基于事件驱动的回调。

接下来我们看一下onRequest() 的主体部分,当回调启动,我们的 onRequest() 函数被触发的时候,有两个参数被传入: request 和 response 。

request : 收到的请求信息;

response : 收到请求后做出的响应。

所以这段代码所执行的操作就是:

当收到请求时,

1、使用 response.writeHead() 函数发送一个HTTP状态 和 HTTP头的内容类型(content-type)

2、使用 response.write() 函数在HTTP相应主体中发送文本“Hello World”。

3、调用 response.end() 完成响应。

这样分析,是不是加深了你对这段代码的理解呢?

下一节我们来了解一下,nodejs的代码模块化。

轻松创建nodejs服务器(3):代码模块化 nodejs的功能块大都以模块的形式存在的。通常会有一个统一入口index.js,然后调用不同的模块来完成我们需要的功能。我们先来看看怎么把server.js变成一

轻松创建nodejs服务器(4):路由 服务器需要根据不同的URL或请求来执行不一样的操作,我们可以通过路由来实现这个步骤。第一步我们需要先解析出请求URL的路径,我们引入url模块。

轻松创建nodejs服务器(5):事件处理程序 为了对不同请做出不同的反馈,我们引入一个事件处理器的模块。该模块命名为requestHandlers,我们先添加start()和upload()两个占位函数。requestHandlers.js代

标签: node.js创建服务

本文链接地址:https://www.jiuchutong.com/biancheng/374196.html 转载请保留说明!

上一篇:轻松创建nodejs服务器(1):一个简单nodejs服务器例子(搭建nodejs)

下一篇:轻松创建nodejs服务器(3):代码模块化(node创建服务)

  • 工会经费支付福利方案
  • 建筑公司办公室照片真实
  • 投资性房地产转为非投资性房地产
  • 污水处理税收优惠政策
  • T3现金流量表怎么删除
  • 期末结转增值税
  • 监理费可以由施工方出吗
  • 异常增值税扣税凭证
  • 资产收益权转让产品
  • 协会会费收入会计科目
  • 小规模纳税人可以开3%的专票吗
  • 关于水利工程
  • 申报文件解密失败怎么办?
  • 2021年沙子水泥税率是多少
  • 居委会有没有税收政策
  • 财务负责人和办税人员哪个责任大
  • 电子商务出纳的岗位职责
  • abs应付债券
  • 存货中的生产成本是指
  • 出口退税增值税发票稽核信息
  • 建安企业增值税税率是多少
  • 公司做贷款
  • 培训费没有发票怎么办
  • 一次性收取的房租需要按月纳增值税吗
  • 计划成本法存货成本的确定
  • 国家信用信息公司系公示
  • bios怎么恢复出厂设置dell
  • 公司撤股后还要担责任吗
  • 苹果手机连接电脑
  • 布里斯托尔景点
  • 对其他公司的建议
  • 浠字的意思和含义是什么
  • antd-vue-pro
  • Vue vue.config.js 的详解与配置
  • 本月职工工资
  • 快速查找附近的人
  • php ffi
  • lsmod命令结果详解
  • 普通发票退税流程图
  • 出口抵减内销产品应纳税额怎么结转
  • mysql全局锁和表锁
  • 出售无形资产净收益计入什么科目
  • 其他收益所得税汇算清缴时需要调增吗
  • 金蝶利润表没有信用减值损失
  • 企业购买了数千亿资产
  • 收到加工费怎么做账务处理分录
  • 融资方式股权融资
  • 收银电脑怎么录商品
  • 甲方代付农民工工资谁报个税
  • 电子承兑汇票的承兑人是谁
  • 用于研发购买的材料进项税额
  • 跨年的费用怎么调整
  • 应收应付账款如何清理
  • 利润表中管理费用根据什么填
  • 建账要求
  • win7硬盘设置在哪里设置
  • windows10怎么隐藏工具栏
  • 解决口苦最快的方法
  • win7无法登录qq
  • win10怎么设置宽带连接上网
  • win7开启远程设置
  • win7系统怎么给文件夹设置密码
  • win10扫描仪扫描的文件在哪
  • win10系统笔记本怎么连接wifi
  • [Unity3D]Stencil buffer失效了怎么办
  • Javascript之String对象详解
  • 嵌入js
  • openglvbo
  • python调用ansible执行playbook
  • unity进度条控制动画进度
  • unity网络通信插件
  • [置顶]bilinovel
  • Python cx_freeze打包工具处理问题思路及解决办法
  • python 批量查询
  • 修复硬盘
  • 广东省地方税务局征收社会保险费欠费管理暂行办法
  • 跨区迁移税务需要注销吗?
  • 大同税务局官网录取名单
  • 国家税务局宝鸡市税务局
  • 国家税务总局广西壮族自治区税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设