5.nodejs的http模块

http请求流程

当用户在浏览器的地址栏输入地址以后会发生如下过程:web浏览器↔web服务器,浏览器请求服务器,服务器响应浏览器

1.建立tcp连接

2.请求响应,web浏览器向web服务器发送请求命令,例如get等

3.web浏览器发送请求头信息,发送请求响应以后还要发送一些其他的信息,之后浏览器会发送一行空白行来通知服务器,它结束了该头信息的发送

4.发送正文(如果有正文)

5.web服务器应答.服务器接收到浏览器的请求以后发出应答,应答的第一部分是协议的版本号和应答状态码

6.web服务器发送应答信息,发送完以后会以一行空白行来表示头信息到此结束,然后它以content-type应答头信息所描述的格式发送用户所请求的实际数据

7.web服务器向浏览器发送数据

8.web服务器关闭tcp连接

一般情况下一旦web服务器向浏览器发送了请求数据,他就要关闭tcp连接,但是如果浏览器或者服务器在发送头信息时加入了这行代码:connection:keep-alive那么tcp连接在发送后将仍然保持打开状态,浏览器可以继续通过相同的连接发送请求,节省连接所需的时间和网络带宽.

HTTPS和http模块的应用

//引入模块

var http = require("http")

//创建一个web服务的实例

var server = http.createServer( (req , res) => {

    //打印请求头信息,会有两个对象,因为有两次请求,一个是请求图标favicon.ico,一个是请求路径"http://xxxxx"

    console.log(res.headers)

    //打印在浏览器输入的地址

    console.log(req.url)

})

你可能感兴趣的:(5.nodejs的http模块)