Node.js Up and Runing 学习日记(一)
认识一个Node.js程序
HTTP模块是专为快速非阻塞式HTTP服务器而用C重新编写的.
1. var http = require('http');
2. http.createServer(function(req, res){
3. res.writeHead(200,{'Content-Type':'text/html'});
4. res.end('hello world!');
5. }).listen('8230','127.0.0.1');
6. console.log('server running in 127.0.0.1/8230');
流程说明
首先通过
require()
方法把HTTP库包含到程序中来当前需要了解到的是,HTTP库所既有的功能已经赋给了http对象
下一步创建HTTP服务器
或者创建一个HTTP实例来调用HTTP模块的一个工厂模式方法(createServer)来创建新的HTTP服务器
新的HTTP服务器并没有赋值给任何变量,它只会成为存活在全局范围内的匿名对象
我们可以通过链式调用来初始化服务器,并告诉它监听8124端口.
当调用createServer的时候,传入一个匿名函数作为参数
绑定在新创建服务器的事件监听器上进行request事件处理
消息事件是javascript和Node的核心
在这个例子中,每当一个新的访问请求到达Web服务器,它都将调用我们指定的函数方法来处理,称之为回调.
因为每当一个事件发生时,我们将回调监听此事件的所有函数.
回调函数有两个参数:
请求的对象(req)
响应的对象(res)
通常会需要同时使用请求和响应对象.
res.writeHead()来设置HTTP响应头,否则就不能返回真实内容给客户端
其中状态码:200表示OK.
并且传入一段HTTP头描述,这里只指定Content-Type.一般有两种类型:
text/plain 表示一般文本;
text/html 表示HTML文本
在本例中 end() 来同时完成写入正文以及关闭连接
end方法会关闭HTTP连接,但因为我们传入一个字符串,所以会在发送此内容后才关闭连接
最后一行调用console.log()标准输出stdout流上打印信息.
运行
node hello.js
然后在浏览器打开 <127.0.0.1/8230>.
Date : 2017/08/05 20:30
最新文章
- BOM基础部分
- javascript 特效实现(1)——展开选项和收起效果
- .net程序集强命名(签名)
- HDU 2222:Keywords Search(AC自动机模板)
- iOS 框架收集
- 深入浅出Spring(五) SpringMVC
- mysql的学习记录
- redis sentinel 配置
- log4net.dll配置以及在项目中应用 zt
- servlet单例多线程
- 十一、oracle 数据库管理员
- volatile的理解和使用
- python 小程序—循环和列表训练
- 掌上快递 APP 项目之概述篇
- 【Linux命令】用户及分用户组
- go-关于指针和地址
- 解决VS Code开发Python3语言自动补全功能不带括号的问题
- 【转】学习Robot Framework必须掌握的库—-BuiltIn库
- 教你一招:更新/替换系统 hosts,轻松访问国外站点
- 2018-02-16 GetSameTypeQuestion