轻松创建nodejs服务器(2):nodejs服务器的构成分析
2023-06-13 09:15:37 时间
紧接上一节,我们来分析一下代码:
第一行请求(require)Node.js自带的http模块,并且把它赋值给http变量。
接下来我们调用http模块提供的函数:createServer。
这个函数会返回一个对象,这个对象有一个叫做listen的方法,这个方法有一个数值参数,指定这个HTTP服务器监听的端口号。
为了提高可读性,我们来改一下这段代码。
原来的代码:
varhttp=require("http");
http.createServer(function(request,response){
response.writeHead(200,{"Content-Type":"text/plain"});
response.write("HelloWorld");
response.end();
}).listen(8888);
可以改写成:
varhttp=require("http");
functiononRequest(request,response){
response.writeHead(200,{"Content-Type":"text/plain"});
response.write("HelloWorld");
response.end();
}
http.createServer(onRequest).listen(8888);
我们定义了一个onRequest()函数,并将它作为参数传给createServer,类似回调函数。
我们给某个方法传递了一个函数,这个方法在有相应事件发生时调用这个函数来进行回调,我们把这叫做基于事件驱动的回调。
接下来我们看一下onRequest()的主体部分,当回调启动,我们的onRequest()函数被触发的时候,有两个参数被传入:request和response。
request:收到的请求信息;
response:收到请求后做出的响应。
所以这段代码所执行的操作就是:
当收到请求时,
1、使用response.writeHead()函数发送一个HTTP状态200和HTTP头的内容类型(content-type)
2、使用response.write()函数在HTTP相应主体中发送文本“HelloWorld”。
3、调用response.end()完成响应。
这样分析,是不是加深了你对这段代码的理解呢?
下一节我们来了解一下,nodejs的代码模块化。
相关文章
- nodejs开发http接口
- Nodejs简单数据库操作
- nodeJs基础Api
- 一篇帮你彻底弄懂NodeJs中的Buffer
- Windows下搭建NodeJS绿色版开发环境
- nodejs中事件循环中的执行顺序
- NodeJS深受欢迎的6大原因
- nvm-windows管理nodejs版本神器——代理和镜像配置
- Nodejs开发规范
- nodejs web应用服务器搭建(一):跑起你的服务器详解编程语言
- Nodejs真.多线程处理详解编程语言
- NodeJS Stream 五:双工流详解编程语言
- Thin Web Server与NodeJS配合问题
- NodeJS的模块写法入门(实例代码)
- nodejs读取memcache示例分享
- Ubuntu中搭建Nodejs开发环境过程分享
- Nodejs中自定义事件实例
- Nodejs实现的一个静态服务器实例
- 轻松创建nodejs服务器(4):路由
- 轻松创建nodejs服务器(6):作出响应
- 轻松创建nodejs服务器(7):阻塞操作的实现
- 使用nodejs、Python写的一个简易HTTP静态文件服务器
- 基于Docker开发NodeJS应用