HTTP协议采用了请求/响应模型,浏览器或其余客户端发出请求,服务器给与响应。就整个网络资源传输而言,包括message-header和message-body两部分。首先传递message- header,即http header消息 。 javascript
经过浏览器抓包咱们能够看到http 请求头的一些信息 css
一、Accept html
说明:指定客户端可以接收的内容类型,内容类型中的前后次序表示客户端接收的前后次序。 java
例如:Accept:text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5 git
备注:在Prototyp(1.5)的Ajax代码封装中,将Accept默认设置为“text/javascript, text/html, application/xml, text/xml, */*”。这是由于Ajax默认获取服务器返回的Json数据模式在Ajax代码中,可使用XMLHttpRequest 对象中setRequestHeader函数方法来动态设置这些Header信息。 web
二、Referer json
说明:先前网页的地址,当前请求网页紧随其后,即来路 浏览器
三、Accept-Language 缓存
说明:浏览器可接受的语言 例如Accept-Language:zh-CN 服务器
四、User-Agent
说明:HTTP客户端运行的浏览器类型的详细信息。经过该头部信息,web服务器能够判断到当前HTTP请求的客户端浏览器类别
例如:Mozilla/5.0 (Windows NT 6.1; WOW64; rv:14.0) Gecko/20100101 Firefox/14.0.1
服务器经过对User-Agent的解析,能够断定用户使用的是什么浏览器,以及浏览器的版本等信息。我在http://git.oschina.net/ncthinker/JEEUtils已写了关于获取浏览器版本信息的工具类。
五、Accept-Encoding
说明:指定客户端浏览器能够支持的web服务器返回内容压缩编码类型。表示容许服务器在将输出内容发送到客户端之前进行压缩,以节约带宽。而这里设置的就是客户端浏览器所可以支持的返回压缩格式。
六、Host
说明:请求的web服务器地址
例如:请求的服务器地址为http://www.ynjjgt.com/u/937713/blog,那么Host就为www.ynjjgt.com
七、DNT 参考(http://en.wikipedia.org/wiki/Do_not_track_header)
说明:请勿追踪(英语:Do Not Track,简称DNT,又译请勿跟踪)是一项被提名的HTTP头。 当用户提出启用“请勿追踪”功能后,具备“请勿追踪”功能的浏览器会在http数据传输中添加一个“头信息”(headers),这个头信息向商业网站的服务器代表用户不但愿被追踪。这样,遵照该规则的网站就不会追踪用户的我的信息来用于更精准的在线广告。
NDT如今接受三个赋值:1表明用户不想被第三方网站追踪,0表明接受追踪,null表明用户不置能否。
八、Connection
说明:表示是否须要持久链接。若是web服务器端看到这里的值为“Keep-Alive”,或者看到请求使用的是HTTP 1.1(HTTP 1.1默认进行持久链接),它就能够利用持久链接的优势,当页面包含多个元素时(例如Applet,图片),显著地减小下载所须要的时间。要实现这一点, web服务器须要在返回给客户端HTTP头信息中发送一个Content-Length(返回信息正文的长度)头,最简单的实现方法是:先把内容写入ByteArrayOutputStream,而后在正式写出内容以前计算它的大小。
九、Cookie
说明:HTTP请求发送时,会把保存在该请求域名下的全部cookie值一块儿发送给web服务器。
除了上面的以外还有下面的一些头信息。