1、一次完整的http事务的过程
域名解析--->发起TCP的3次握手--->建立TCP连接后发起http请求--->服务器响应http请求,浏览器获得html代码--->浏览器解析html代码,并请求html代码中的资源(js、css、img等)--->浏览器对页面进行渲染呈现给用户
报文头文件信息分析:
Accept:告诉服务器,我接受哪些MIME类型
(text/html,application/xhtml+xml;q=0.9,img/webp,*/*;9=0.8)
Accept-Encoding:接受的压缩方式文件
Accept-Lanague 告诉服务器能够发送哪些语言
Connection告诉服务器支持的keep-aliva特性
Cookie每次请求时都会携带上cookie以方便服务器端识别是否同一个客户端
Host 用来标识请求服务器上的那个虚拟主机
User-Agent 用户代理,一般是浏览器,也有其他类型
Anthorization:客户端提供给服务器的认证信息
2、http请求状态码
1xx: 信息性状态码
100, 101
2xx: 成功状态码
200:OK
3xx: 重定向状态码
301: 永久重定向, Location响应首部的值仍为当前URL,因此为隐藏重定向;
302: 临时重定向,显式重定向, Location响应首部的值为新的URL
304:Not Modified未修改,比如本地缓存的资源文件和服务器上比较时,发现并没有修改,服务器返回一个304状态码,告诉浏览器,你不用请求该资源,直接使用本地的资源即可。
4xx: 客户端错误状态码
404: Not Found 请求的URL资源并不存在
5xx: 服务器端错误状态码
500: Internal Server Error 服务器内部错误
502: Bad Gateway 前面代理服务器联系不到后端的服务器时出现
504:Gateway Timeout这个是代理能联系到后端的服务器,但是后端的服务器在规定的时间内没有给代理服务器响应
Connection 使用keep-alive特性
Content-Encoding 使用gzip方式对资源压缩
Content-type MIME类型为html类型,字符集是UTF-8
Date 响应的日期
Server 使用的WEB服务器
Transfer-Encoding:chunked 分块传输编码 是http中的一种数据传输机制,允许HTTP由网页服务器发送给客户端应用(通常是网页浏览器)的数据可以分成多个部分,分块传输编码只在HTTP协议1.1版本(HTTP/1.1)中提供
Vary 可参考(http://blog.youkuaiyun.com/tenfyguo/article/details/5939000)
X-Pingback 参考(http://blog.sina.com.cn/s/blog_bb80041c0101fmfz.html)