Http(Hyper Text Transfer Protocal)是超文本传输协议,它用于网页间传送数据,http采用的是请求、响应模型,也就是说浏览器和Web服务器之间的交互(http事务)包括浏览器发起的一个请求和随后服务器返回的一个响应。请求和响应本质上是文本流,客户端和服务器端把它们解释为首部和紧随其后的主体部分。

 

一个http请求主要由首部信息和可能包含一些数据或参数的主体部分组成。

一个http响应通常包含首部信息和返回页面的html标记。

 

那么我们如何查看http首部信息呢?firefox提供了一个插件LiveHTTPHeaders,它的功能是记录浏览器获得http流量,以及当前的请求和响应首部信息,GET和POST方法的查询字符也被记录下来,但是响应的内容不会被记录。

 

如何安装LiveHtTTPHeaders插件?

https://addons.mozilla.org/en-US/firefox/addon/3829中有此插件的安装地址,如下图1-1所示。

图1-1

点击 【Install Now】,将安装liveHTTPHeaders插件,如下图1-2所示。

图1-2

安装好后,我们来看看如何使用它来查看http首部信息。

打开firefox浏览器(保证为空页面),点击菜单栏下的【工具】→【LiveHTTPHeaders】选项,将出现如下图1-3所示界面。

图1-3

在firefox中输入一个网址,liveHttpHeaders界面将产生一些信息,如图1-4所示。

图1-4

图中产生的代码片断如下(红色为注释):

http://localhost:8080/myweb/tomcat.html(输入的测试地址)

请求首部

GET /myweb/tomcat.html HTTP/1.1(使用GET方法,协议为1.1版本)

Host: localhost:8080

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12

Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5(定义客户端可以处理的媒体类型,按优先级排序;在一个以逗号为分隔的列表中,可以定义多种类型和使用通配符)

Accept-Language: en-us,en;q=0.5(定义客户端乐于接受的自然语言列表)

Accept-Encoding: gzip,deflate(定义客户端可以理解的编码机制)

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7

Keep-Alive: 300

Connection: keep-alive

响应首部

HTTP/1.x 200 OK

Server: Apache-Coyote/1.1

Etag: W/"71-1199901217640"

Last-Modified: Wed, 09 Jan 2008 17:53:37 GMT

Content-Type: text/html

Content-Length: 71(响应主体部分的信息大小,以此判断数据是否丢失或损坏)

Date: Wed, 27 Feb 2008 13:18:52 GMT……

对于其他头信息可以查阅相关资料,这里就不一一列举。