查看请求信息
在HTTP请求中,除了服务器的响应实体内容(如HTML网页、图片等)以外,其他消息对用户都是不可见的,要想观察这些隐藏的信息,需要借助一些工具。例如,使用Chrome浏览器,按F12键打开开发者工具,然后切换到Network选项卡刷新网页,就可以看到当前网页从第1个请求开始,依次发送的所有请求。
为了读者更好地理解,下面以百度网站为例,查看请求信息。在Chrome浏览器中访问http://www.baidu.com
,按F12键打开开发者工具,切换到Network选项卡后刷新网页,单击第一个请求查看Headers标签显示的内容。需要注意的是,Chrome浏览器显示的信息是浏览器自动解析后的,若要查看源格式,单击Request Headers后面的view source按钮,将请求信息转化成为源格式,具体如图1所示。
图1 HTTP请求头信息
在图1中,第一行是请求行,后面几行是请求头。请求头是由头字段名称和对应的值构成,中间用冒号“:”和空格分隔。另外,当通过POST方式提交表单时,在请求消息中还会包含实体内容,实体内容位于请求头后面,用空行分隔。
请求头字段大部分是HTTP规定的,每个都有特定的用途,一些应用程序也可以添加自定义的自段。常见的请求头字段和说明如表1所示。
表1 常见的请求头
请求头 | 描述 |
---|---|
Accept | 客户端浏览器支持的数据类型 |
Accept-Charset | 客户端浏览器采用的编码 |
Accept-Encoding | 客户端浏览器支持的数据压缩格式 |
Accept-Language | 客户端浏览器所支持的语言包,可以指定多个 |
Host | 客户端浏览器想要访问的服务器主机 |
If-Modified-Since | 客户端浏览器对资源的最后缓存时间 |
Referer | 客户端浏览器是从哪个页面过来的 |
User-Agent | 客户端的系统信息,包括使用的操作系统、浏览器版本号等 |
Cookie | 客户端需要带给服务器的数据 |
Cache-Control | 客户端浏览器的缓存控制 |
Connection | 请求完成后,客户端希望是保持连接还是关闭连接 |