概念
-
请求和响应
浏览器向服务器发出请求,而服务器一般会监听某个端口比如80,而请求默认会发送到80端口,在接收到浏览器的请求以后,会通过80端口输出请求的内容给浏览器,这个过程就叫响应;
-
请求的内容总共四部分
1、GET(动词) /(路径) HTTP/1.1协议版本 //动词、路径和协议版本,中间有空格
2、
key1:value1; //比如 x-理解方式:纯文本;这一部分是告诉浏览器如何理解第四部分
key2:value2;
......
3、回车 //区分第一、二部分和第四部分
4、其它东西 //可以为空
第一、二部分叫做请求头,第四部分叫做请求体
-
响应的内容
1、HTTP/1.1(请求版本) 200(响应码) OK(描述) //中间用空格隔开
2、一样的key:value
3、回车
4、随便的东西(在第二部分用content-type说明了)
回车上面的是响应头,下面是响应体
key:value部分的referer表示的是请求的方式是输入网址
这个例子请求体是空
这里面的信息也有用:queueing排队;proxy negotiation:代理;dns lookup:DNS查找;initial connection:发起链接;SSL加密;
Node
Node和chrome的角色有点像(暂时这么理解),node置于server中,它可以接收浏览器发送来的请求。Node从浏览器的请求里拿到4行字符串,它会把字符串封装成对象request再传给JS,JS处理完以后再返回一个response对象,再加到Node,Node再把这个对象变成字符串(响应的四行),通过80商品返回给服务器。
响应体本身就是被转化过格式的网页内容