[原创]HttpWatch工具简介及使用技巧一概述:HttpWatch强大的网页数据分析工具.集成在InternetExplorer工具栏.包括网页摘要.Cookies管理.缓存管理.消息头发送/接受.字符查询.POST数据和目录管理功能.报告输出HttpWatch是一款能够收集并显示页页深层信息的软件。它不用代理服务器或一些复杂的网络监控工具,就能够在显示网页同时显示网页请求和回应的日志信息。甚至可以显示浏览器缓存和IE之间的交换信息。集成在InternetExplorer工具栏。二安装HttpWatch略过^_^三基本功能介绍启动Httpwatch从IE的“查看”—“浏览器栏”—“HttpWatch”启动HttpWatch。如下图所示:以下是HttpWatch程序界面以下用登录我的邮箱mail.163.com例子来展示Httpwatch:点击“Record”后,在IE打开需要录制的网址,mail.163.com,输入用户名,密码后完成登录操作1.3.1Overview(概要)表示选定某个信息显示其概要信息如上图红框所示:URL::200请求的URL是,返回的Htpp状态代码结果200,表示成功;ResyncURLBrowserrequestedrefreshifchanged-浏览器请求的URLStartedAt2008-Jan-0409:21:09.422(localtime)请求开始时间(实际记录的是本机的时间)ConnectConnecttoIPaddress'218.107.55.86'请求的网址的IP地址HttpRequestUnconditionalrequestsentfor请求,当浏览器向Web服务器发出请求时,它向服务器传递了一个数据块,也就是请求信息HttpResponseHeadersandcontentreturnedHttp响应,当浏览器接受到web服务器返回的信息时2.3.2Header(报头)表示从Web服务器发送和接受的报头信息;=UBDCcOJJDknBulMFzSJJipPzfROMNqHO如上图红框所示:Http请求头发送信息HeadersSentvalueRequest-LineGET/external/closea_d.jsHTTP/1.1以上代码中“GET”代表请求方法,“closea_d.js”表示URI,“HTTP/1.1代表协议和协议的版本。Accept*/*指示能够接受的返回数据的范围,*/*表示所有Accept-Encodinggzip,deflateAccept-Encoding表明了浏览器可接受的除了纯文本之外的内容编码的类型,比如gzip压缩还是deflate压缩内容。Accept-Languagezh-cn表示能够接受的返回数据的语言ConnectionKeep-Alive保持Tcp请求连接备注:在HTTP工作开始之前,Web浏览器首先要通过网络与Web服务器建立连接,该连接是通过TCP来完成的,该协议与IP协议共同构建Internet,即著名的TCP/IP协议族,因此Internet又被称作是TCP/IP网络。HTTP是比TCP更高层次的应用层协议,根据规则,只有低层协议建立之后才能,才能进行更层协议的连接,因此,首先要建立TCP连接,一般TCP连接的端口号是80Cookievjuids=-1b9063da8.1173d33f879.0.9aab8b85a459d;vjlast=1199406314;_ntes_nnid=a1e69963f40453af8a9ad171cc4cd8da,0|tech|;NTES_UFC=3000000100000000000000000000000000000000000000000000000000000000;Province=021;City=021;ntes_mail_firstpage=normal;NTES_SESS=68LUOUH9ewcCBFyN5OXZ_0qf._IOMCkFscaGYrooXpjtVF7r8Vx7jAzg7HGdWo00GQEn1ZmrZcX7FMAXnb052r8XOFZZYk.hN;NETEASE_SSN=mayingbao2002;NETEASE_ADV=11&23&1199409658752;Coremail=VDeAMrrrDFaTa%XCVwJiXXsRLSLkbLhZXXZGqPJkEXFKNtCookie没什么说的就是客户端记录相关信息Hostmimg.163.com请求连接的主机名称’Referer=XCVwJiXXsRLSLkbLhZXXZGqPJkEXFKNt包含一个URL,用户从该URL代表的页面出发访问当前请求的页面User-AgentMozilla/4.0(compatible;MSIE6.0;WindowsNT5.1;SV1;.NETCLR1.1.4322;.NETCLR2.0.50727)客户端标识浏览器类型Http请求头返回信息HeadersReceivedValueStatus-LineHttp/1.0200ok表示Http服务端响应返回200Accept-RangesbytesHttp请求范围的度量单位Age117表示Http接受到请求操作响应后的缓存时间Cache-Controlmax-age=3600一个用于定义缓存指令的通用头标Connectionkeep-alive保持Tcp请求连接Content-Typeapplication/x-javascript标明发送或者接收的实体的MIME类型DateFri,04Jan200801:12:26GMT发送HTTP消息的日期Etag10f470-734-b32eb00一种实体头标,它向被发送的资源分派一个唯一的标识符ExpiresFri,04Jan200802:12:26GMT指定实体的有效期Last-ModifiedFri,04Jan200801:01:00GMT指定被请求资源上次被修改的日期和时间ServerApache一种标明Web服务器软件及其版本号的头标X-CacheHITfrommimg68.nets.com表示你的httprequest是由proxyserver回的3.3.3Cookies显示Cookies信息如上图所示City=021,其实是我163邮箱中设置城市信息值,在Cookies中记录为021(代表上海这个城市)备注:什么是cookie?Cookie是一种在客户端保持HTTP状态信息的技术,Cookie是在浏览器访问WEB服务器的某个资源时,由WEB服务器在HTTP响应消息头中附带传送给浏览器的一片数据,WEB服务器传送给各个客户端浏览器的数据是可以各不相同的。浏览器可以决定是否保存这片数据,一旦WEB浏览器保存了这片数据,那么它在以后每次访问该WEB服务器时,都应在HTTP请求头中将这片数据回传给WEB服务器。显然,Cookie最先是由WEB服务器发出的,是否发送Cookie和发送的Cookie的具体内容,完全是由WEB服务器决定的。Cookie在浏览器与WEB服务器之间传送的过程如图7.1所示。4.3.4Cache(缓存)显示在请求完成前后的浏览器缓存里URL地址栏里的详细信息5.3.5QueryString(查询字符串)显示查询字符串被用在是传递参数url中如下图所示:=mayingbao2002&domain=yodao.com&loginCookie=uaLr3t2p5wKi_ku90vYy04gK1MamttMzYGFxdsppqrz3ZhjsWZ8jzDlVjmxEIpSSx2hn__w3ZsoBSFu6gKRZyRUdIgZYzVciX&clearPersistCookie=如上面的红框中显示的mayingbao2002字符串,是存在于请求的URL传递的参6.3.6POSTData显示通过Post方式数据信息以下是mail.163.com登录过程中POSTData,如下图所示:=1&url=上面的红框:application/x-表示,post方式默认提交数据编码备注:以下为Post方式提交数据编码几种方式:text/plain以纯文本的形式传送application/x-默认的编码形式,即URL编码形式multipart/form-dataMIME编码,上传文件的表单必须选择该MimeType指的是如text/html,text/xml等类型MIME(MultipurposeInternetEmailExtension),意为多用途Internet邮件扩展,它是一种多用途网际邮件扩充协议,在1992年最早应用于电子邮件系统,但后来也应用到浏览器。服务器会将它们发送的多媒体数据的类型告诉浏览器,而通知手段就是说明该多媒体数据的MIME类型,从而让浏览器知道接收到的信息哪些是MP3文件,哪些是JPEG文件等等。当服务器把把输出结果传送到浏览器上的时候,浏览器必须启动适当的应用程序来处理这个输出文档。在HTTP中,MIME类型被定义在head、/head部分的Content-Type中。数据类型MIME类型超文本标记语言文本.htm,.html文件text/html(数据类别是text,种类是html,下同)纯文本,.txt文件text/plainRTF文本,.rtf文件application/rtfGIF图形,.gif文件image/gifJPEG图形,.jpeg,.jpg文件image/jpegau声音,.au文件audio/basicMIDI音乐,mid,.midi文件audio/midi,audio/x-midiRealAudio音乐,.ra,.ram文件audio/x-pn-realaudioMPEG,.mpg,.mpeg文件video/mpegAVI,.avi文件video/x-msvideoGZIP,.gz文件application/x-gzipTAR,.tar文件application/x-tar如上图红圈所表示,可以看到POSTData中的password和username数据;备注:get方法和Post方法区别GET方法GET方法是默认的HTTP请求方法,我们日常用GET方法来提交表单数据,然而用GET方法提交的表单数据只经过了简单的编码,同时它将作为URL的一部分向Web服务器发送,因此,如果使用GET方法来提交表单数据就存在着安全隐患上。例如=zhangshi&Age=30&Submit=%cc%E+%BD%BB从上面的URL请求中,很容易就可以辩认出表单提交的内容。(?之后的内容)另外由于GET方法提交的数据是作为URL请求的一部分所以提交的数据量不能太大POST方法POST方法是GET方法的一个替代方法,它主要是向We