二 httpWatch概述:
HttpWatch强大的网页数据分析工具.集成在Internet Explorer工具栏.包括网页摘要.Cookies管理.缓存管理.消息头发送/接受.字符查询.POST 数据和目录管理功能.报告输出 HttpWatch 是一款能够收集并显示页页深层信息的软件。它不用代理服务器或一些复杂的网络监控工具,就能够在显示网页同时显示网页请求和回应的日志信息。甚至可以显示浏览器缓存和IE之间的交换信息。集成在Internet Explorer工具栏。
三 基本功能介绍
启动Httpwatch
从IE的“查看”—“浏览器栏”—“HttpWatch”启动HttpWatch。
以下是HttpWatch程序界面
以下用登录我的邮箱mail.163.com例子来展示Httpwatch:
点击“Record”后,在IE打开需要录制的网址,mail.163.com,输入用户名,密码后完成登录操作
1 Overview(概要)
表示选定某个信息显示其概要信息
如上图红框所示:
URL: http://news.163.com/special/0001127H/163mail09.html?color=005590
Result:200
请求的URL是http://news.163.com/special/0001127H/163mail09.html?color=005590 ,返回的Htpp状态代码结果200,表示成功;
Resync URL Normal browser lookup of URL http://news.163.com/special/0001127H/163mail09.html?color=005590
浏览器请求的URL
Started At 2012-Aug-29 15:33:03.980 (local time)
请求开始时间(实际记录的是本机的时间)
DNS lookup lookup of hostname 'news.163.com'
DNS查询的域名
Connect Connect to IP address '106.3.78.46'
请求的网址的IP地址
Http Request Unconditional request sent for http://news.163.com/special/0001127H/163mail09.html?color=005590
Http请求,当浏览器向Web服务器发出请求时,它向服务器传递了一个数据块,也就是请求信息
Http Response Headers and content returned
Http响应,当浏览器接受到web服务器返回的信息时
2 Time Chart(时间表)
Blocked:浏览器阻塞时间,浏览器对单个域名的并发连接数是有限制的,需要处理一批请求再发送另一批请求,IE 一般为2个并发,Block时间即为处理这个时间。
DNS Lookup:DNS域名解析时间
Connect:URL与Web服务器建立连接所耗费的时间
Send:客户端向Web服务器发送请求所花费的时间
Wait:服务器从接收到http请求到开始向客户端发送内容所花费的时间。这段时间通常包括数据库查询、aspx页面内容转换为html等待操作
Receive:服务器的响应内容全部发送到客户端所花费的时间
TTFB:初始浏览器网络请求到服务器接受到的第一个字节的时间,包括TCP连接和sEND request的时间,以及服务器返回第一个字节的时间
Network:网络传输的整个时间
3 Header(报头)
表示从Web服务器发送和接受的报头信息;
http://news.163.com/special/0001127H/163mail09.html?color=005590
如上图红框所示:
3.1 Http请求头发送信息
Headers Sent value
Request-Line GET /special/0001127H/163mail09.html?color=005590 HTTP/1.1
以上代码中“GET”代表请求方法,“163mail09.html”表示URI,“HTTP/1.1代表协议和协议的版本。
Accept image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/xaml+xml, application/x-ms-xbap, application/x-ms-application, application/vnd.ms-xpsdocument, */*
指示能够接受的返回数据的范围, */*表示所有
Accept-Encoding gzip, deflate
Accept-Encoding表明了浏览器可接受的除了纯文本之外的内容编码的类型,比如gzip压缩还是deflate压缩内容。
Accept-Language zh-cn
表示能够接受的返回数据的语言
Connection Keep-Alive
保持Tcp请求连接
备注:在HTTP工作开始之前,Web浏览器首先要通过网络与Web服务器建立连接,该连接是通过TCP来完成的,该协议与IP协议共同构建Internet,即著名的TCP/IP协议族,因此Internet又被称作是TCP/IP网络。HTTP是比TCP更高层次的应用层协议,根据规则,只有低层协议建立之后才能,才能进行更层协议的连接,因此,首先要建立TCP连接,一般TCP连接的端口号是80
Cookie NTES_SESS=Q5iIau_5ksdWqlfGjm.JuoKr7BhIVza8EslG3YJEG4iCSnZrSDeaKRuFJuctdAmVvn0E6dL_gveBjubxsssXjnNW.GmOQAOMztmN95F8362iJCZLY7JQhhsT5DZiotsAS753o6xv9HPohuLh.sRK1Wxlxy3GbuhkCKsVn0ow6J08h; S_INFO=1346225580|0|2&30##|minlan55; mail_host=cwebmail.mail.163.com; _ntes_nnid=3a3d441765f5ae04e0ecbe8d113ef94c,1346225287671; _ntes_nuid=3a3d441765f5ae04e0ecbe8d113ef94c; SID=a7c65b48-a700-4a4c-8618-e7dcbeb68476; P_INFO=minlan55@163.com|1346225580|0|mail163|10&16|gud&1346223257&163#gud&440300#10#0#0|137943&0
Host news.163.com
请求连接的主机名称’
Referer http://cwebmail.mail.163.com/js4/index.jsp?sid=XCmeOvWRamELZUdOEDRRnaqFFVFQUKcU
包含一个URL,用户从该URL代表的页面出发访问当前请求的页面
User-Agent Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; Maxthon; InfoPath.2; CIBA; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)
客户端标识浏览器类型
3.2 Http请求头返回信息
Headers Received | Value | 解释 |
Status-Line | HTTP/1.1200 OK | 表示http服务端响应返回200 |
Accept-Ranges | bytes | Http请求范围的度量单位 |
Age | 118 | 表示http接受到请求操作响应后的缓存时间 |
Cache-Control | Max-age=120 | 一个用于定义缓存指令的通用头标(指示客户机可以接收生存期不大于指定时间(以秒为单位)的响应) |
Connection | Keep-Alive | 保持Tcp请求连接 |
Content-Length | 13245 | 保持tcp连接的时间 |
Content-Type | text/html; charset=GBK | 标明发送或者接收的实体的MIME类型 |
Date | Wed, 29 Aug 2012 07:33:10 GMT | 发送HTTP消息的日期 |
Last-Modified | Wed, 29 Aug 2012 07:29:04 GMT | 指定被请求资源上次被修改的日期和时间 |
Powered-By-ChinaCache | HIT from CNC-BJ-L-39I | 表示你的 http request 是由 proxy server 回的 |
Proxy-Connection | Keep-Alive | 指定是否应保留请求发送的连接 |
Server | nginx | 标明Web服务器软件及其版本号的头标 |
Vary | Accept-Encoding |
|
Via | zw51190,1.0 SVCTAG-952H42X |
|
4 Cookies
显示Cookies信息
5 Cache(缓存)
显示在请求完成前后的浏览器缓存里URL地址栏里的详细信息
Expire、Last Modification、Etag三种不同的缓存机制
6 Query String(查询字符串)
显示查询字符串被用在是传递参数url中
如下图所示:
http://cwebmail.mail.163.com/js4/weather.jsp?skin=1&color=005590&city=57679
如上面的红框中显示的57679、005590、1字符串,是存在于请求的URL传递的参数
7 POST Data
显示通过Post方式数据信息
以下是mail.163.com登录过程中POST Data,如下图所示:
https://ssl.mail.163.com/entry/coremail/fcg/ntesdoor2?df=webmail163&from=web&funcid=loginone&iframe=1&language=-1&net=c&passtype=1&product=mail163&race=-2_-2_-2_db&style=-1&uid=minlan55@163.com
上面的红框:application/x-www-form-urlencoded表示,post方式默认提交数据编码
备注:以下为Post方式提交数据编码几种方式:
text/plain | 以纯文本的形式传送 |
application/x-www-form-urlencoded | 默认的编码形式,即URL编码形式 |
multipart/form-data | MIME编码,上传文件的表单必须选择该 |
Mime Type指的是如text/html,text/xml等类型
MIME(Multipurpose Internet Email Extension),意为多用途Internet邮件扩展,它是一种多用途网际邮件扩充协议,在1992年最早应用于电子邮件系统,但后来也应用到浏览器。服务器会将它们发送的多媒体数据的类型告诉浏览器,而通知手段就是说明该多媒体数据的MIME类型,从而让浏览器知道接收到的信息哪些是MP3文件,哪些是JPEG文件等等。当服务器把把输出结果传送到浏览器上的时候,浏览器必须启动适当的应用程序来处理这个输出文档。在HTTP中,MIME类型被定义在<head>、</head>部分的Content-Type中。
数据类型 | MIME类型 |
超文本标记语言文本 .htm,.html文件 | text/html(数据类别是text,种类是html,下同) |
纯文本,.txt文件 | text/plain |
RTF文本,.rtf文件 | application/rtf |
GIF图形,.gif文件 | image/gif |
JPEG图形,.jpeg, .jpg文件 | image/jpeg |
au声音,.au文件 | audio/basic |
MIDI音乐,mid,.midi文件 | audio/midi,audio/x-midi |
RealAudio音乐,.ra, .ram文件 | audio/x-pn-realaudio |
MPEG,.mpg,.mpeg文件 | video/mpeg |
AVI,.avi文件 | video/x-msvideo |
GZIP,.gz文件 | application/x-gzip |
TAR,.tar文件 | application/x-tar |
如上图红圈所表示,可以看到POST Data 中的password和username数据;
get方法和Post方法区别见附三
8 Content
统计显示收到的Http响应信息
如下图所示:可以查看
http://cwebmail.mail.163.com/js4/index.jsp?sid=tDkEgQJdJlxGsZIekeddUZdtfPdpsyCb
页响应具体内容:
9 Stream
显示客户端发送的数据,然后服务器端返回的数据
http://mimg.127.net/ggimg/all/img13/120723_attach_130x86.jpg
左边:客户端向服务器端发送数据流
1 GET /ggimg/all/img13/120723_attach_130x86.jpg HTTP/1.1
以上代码中“GET”代表请求方法,“120723_attach_130x86.jpg”表示URI,“HTTP/1.1代表协议和协议的版本。
2 Accept: */*
指示能够接受的返回数据的范围, */*表示所有
3 Referer: http://cwebmail.mail.163.com/js4/index.jsp?sid=tDkEgQJdJlxGsZIekeddUZdtfPdpsyCb
包含一个URL,用户从该URL代表的页面出发访问当前请求的页面
4 Accept-Language: zh-cn
表示能够接受的返回数据的语言
5 Accept-Encoding: gzip, deflate
Accept-Encoding表明了浏览器可接受的除了纯文本之外的内容编码的类型,比如gzip压缩还是deflate压缩内容。
6 User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; Maxthon; InfoPath.2; CIBA; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)
客户端标识浏览器类型
7 Host: mimg.127.net
访问地址主机标识地址
8 Connection: Keep-Alive
保持Tcp连接
右边:服务器端向客户端返回数据流
1 HTTP/1.0 304 Not Modified
服务器告诉客户,原来缓冲的文档还可以继续使用。
2 Date: Mon, 31 Dec 2007 21:42:27 GMT
发送HTTP消息的日期
3 Content-Type: image/gif
服务器返回请求类型是image/gif
4 Expires: Wed, 30 Jan 2008 21:42:27 GMT
指定实体的有效期
5 Last-Modified: Wed, 19 Apr 2006 03:46:16 GMT
指定被请求资源上次被修改的日期和时间
6 Age: 5607
表示Http接受到请求操作响应后的缓存时间
7 X-Cache: HIT from mimg68.nets.com
表示你的 http request 是由 proxy server 回的
8 Connection: keep-alive
保持Tcp请求连接状态
四 HTTPWatch请求信息框
Started: 表示开始记录请求一个URL时间
Time: 表示记录请求耗费的时间
Sent: 表示客户端向服务器端发送请求字节大小
Reveived:表示客户端收到服务端发送请求字节大小
Method: 表示请求URL方式
Result: 表示服务器返回到客户端结果(见附一)
Type: 请求URL的类型(见附二)
URL:列出请求的URL具体地址
五 HTTPWatch菜单区的功能介绍
Record:点击”Record”按钮开始录制Http请求操作
Stop:点击”Stop”按钮停止录制Http请求操作
Clear:点击”Clear”按钮,清除所有录制Log记录
Summary:点击”Summary”按钮,显示或隐藏所有请求信息概述
Find:点击”Find”按钮,可以打开一个查询对话框,在日志记录中去搜索字符串
Filter:点击”Filter”按钮, 可以打开一个过滤器对话框
Save:点击”Save”按钮,可以打开保存对话框:
可以保存的格式为.hwl (Httpwatch Log文件格式), .Xml, CVS格式
Help:点击”Help”按钮,没什么说的,就是英语Help