要做網頁操作,get和post提交數據是必須要學會的一件事。想要獲取get或者post的數據就必須要學會抓包。
下面我就對常見的抓包工具簡單的介紹一遍:
界面和HTTP Analyzer有點像,但是功能少了幾個。而且只能附加到瀏覽器進行抓包。附加的辦法:打開瀏覽器-》查看-》瀏覽器欄-》HttpWatch,然後點record即可抓包。
特點:抓包功能強大,但是隻能依附在IE上。Post提交的數據只有參數和參數的值,沒有顯示提交的url編碼數據。
HttpWatch強大的網頁數據分析工具.集成在InternetExplorer工具欄.包括網頁摘要.Cookies管理.緩存管理.消息頭髮送/接受.字符查詢.POST 數據和目錄管理功能.報告輸出HttpWatch 是一款能夠收集並顯示頁頁深層信息的軟件。它不用代理服務器或一些複雜的網絡監控工具,就能夠在顯示網頁同時顯示網頁請求和迴應的日誌信息。甚至可以顯示瀏覽器緩存和IE之間的交換信息。集成在Internet Explorer工具欄。
啓動Httpwatch
從IE的“查看”—“瀏覽器欄”—“HttpWatch”啓動HttpWatch。如下圖所示:
插件顯示 overview TimeChart Headers Cookies Cache QueryString POSTData Stream SSL Warning Content 。。。。。。
以下是HttpWatch程序界面
3.1 Overview(概要)
表示選定某個信息顯示其概要信息
2. 3.2 Header(報頭)
如上圖紅框所示:
Http請求頭髮送信息
HeadersSent value
Request-Line GET /external/closea_d.jsHTTP/1.1
備註:在HTTP工作開始之前,Web瀏覽器首先要通過網絡與Web服務器建立連接,該連接是通過TCP來完成的,該協議與IP協議共同構建Internet,即著名的TCP/IP協議族,因此Internet又被稱作是TCP/IP網絡。HTTP是比TCP更高層次的應用層協議,根據規則,只有低層協議建立之後才能,才能進行更層協議的連接,因此,首先要建立TCP連接,一般TCP連接的端口號是80
表示Http接受到請求操作響應後的緩存時間
Cache-Control max-age=3600
一個用於定義緩存指令的通用頭標
Connection keep-alive
保持Tcp請求連接
Content-Type application/x-JavaScript
標明發送或者接收的實體的MIME類型
Date Fri,04Jan 2008 01:12:26 GMT
發送HTTP消息的日期
Etag "10f470-734-b32eb00"
一種實體頭標,它向被髮送的資源分派一個唯一的標識符
Expires Fri,04 Jan 2008 02:12:26 GMT
指定實體的有效期
Last-Modified Fri,04 Jan 2008 01:01:00 GMT
指定被請求資源上次被修改的日期和時間
Server Apache
一種標明Web服務器軟件及其版本號的頭標
X-Cache HITfrom mimg68.nets.com
表示你的 http request 是由 proxy server 回的
3. 3.3 Cookies
顯示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.4 Cache(緩存)
3.5 Query String(查詢字符串)
顯示查詢字符串被用在是傳遞參數url中
6. 3.6 POST Data
顯示通過Post方式數據信息
以下是mail.163.com登錄過程中POSTData,如下圖所示:
備註:以下爲Post方式提交數據編碼幾種方式:
text/plain |
以純文本的形式傳送 |
application/x-www-form-urlencoded |
默認的編碼形式,即URL編碼形式 |
multipart/form-data |
MIME編碼,上傳文件的表單必須選擇該 |
Mime Type指的是如text/html,text/xml等類型
MIME(MultipurposeInternet 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 |
如上圖紅圈所表示,可以看到POSTData 中的password和username數據;
GET方法
GET方法是默認的HTTP請求方法,我們日常用GET方法來提交表單數據,然而用GET方法提交的表單數據只經過了簡單的編碼,同時它將作爲URL的一部分向Web服務器發送,因此,如果使用GET方法來提交表單數據就存在着安全隱患上。例如
Http://127.0.0.1/login.jsp?Name=zhangshi&Age=30&Submit=%cc%E+%BD%BB
從上面的URL請求中,很容易就可以辯認出表單提交的內容。(?之後的內容)另外由於GET方法提交的數據是作爲URL請求的一部分所以提交的數據量不能太大
POST方法
POST方法是GET方法的一個替代方法,它主要是向Web服務器提交表單數據,尤其是大批量的數據。POST方法克服了GET方法的一些缺點。通過POST方法提交表單數據時,數據不是作爲URL請求的一部分而是作爲標準數據傳送給Web服務器,這就克服了GET方法中的信息無法保密和數據量太小的缺點。因此,出於安全的考慮以及對用戶隱私的尊重,通常表單提交時採用POST方法。
3.7 Content
統計顯示收到的Http響應信息
如下圖所示:可以查看
頁響應具體內容:
3.9 HttpWatch請求信息框
菜單區如上圖紅框所示:
啓動Httpwatch
從IE的“查看”—“瀏覽器欄”—“HttpWatch”啓動HttpWatch。如下圖所示:
以下是HttpWatch程序界面
3.1 Overview(概要)
表示選定某個信息顯示其概要信息
2. 3.2 Header(報頭)
如上圖紅框所示:
Http請求頭髮送信息
HeadersSent value
Request-Line GET /external/closea_d.jsHTTP/1.1
備註:在HTTP工作開始之前,Web瀏覽器首先要通過網絡與Web服務器建立連接,該連接是通過TCP來完成的,該協議與IP協議共同構建Internet,即著名的TCP/IP協議族,因此Internet又被稱作是TCP/IP網絡。HTTP是比TCP更高層次的應用層協議,根據規則,只有低層協議建立之後才能,才能進行更層協議的連接,因此,首先要建立TCP連接,一般TCP連接的端口號是80
表示Http接受到請求操作響應後的緩存時間
Cache-Control max-age=3600
一個用於定義緩存指令的通用頭標
Connection keep-alive
保持Tcp請求連接
Content-Type application/x-javascript
標明發送或者接收的實體的MIME類型
Date Fri,04Jan 2008 01:12:26 GMT
發送HTTP消息的日期
Etag "10f470-734-b32eb00"
一種實體頭標,它向被髮送的資源分派一個唯一的標識符
Expires Fri,04 Jan 2008 02:12:26 GMT
指定實體的有效期
Last-Modified Fri,04 Jan 2008 01:01:00 GMT
指定被請求資源上次被修改的日期和時間
Server Apache
一種標明Web服務器軟件及其版本號的頭標
X-Cache HITfrom mimg68.nets.com
表示你的 http request 是由 proxy server 回的
3. 3.3 Cookies
顯示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.4 Cache(緩存)
3.5 Query String(查詢字符串)
顯示查詢字符串被用在是傳遞參數url中
6. 3.6 POST Data
顯示通過Post方式數據信息
以下是mail.163.com登錄過程中POSTData,如下圖所示:
備註:以下爲Post方式提交數據編碼幾種方式:
text/plain |
以純文本的形式傳送 |
application/x-www-form-urlencoded |
默認的編碼形式,即URL編碼形式 |
multipart/form-data |
MIME編碼,上傳文件的表單必須選擇該 |
Mime Type指的是如text/html,text/xml等類型
MIME(MultipurposeInternet 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 |
如上圖紅圈所表示,可以看到POSTData 中的password和username數據;
GET方法
GET方法是默認的HTTP請求方法,我們日常用GET方法來提交表單數據,然而用GET方法提交的表單數據只經過了簡單的編碼,同時它將作爲URL的一部分向Web服務器發送,因此,如果使用GET方法來提交表單數據就存在着安全隱患上。例如
Http://127.0.0.1/login.jsp?Name=zhangshi&Age=30&Submit=%cc%E+%BD%BB
從上面的URL請求中,很容易就可以辯認出表單提交的內容。(?之後的內容)另外由於GET方法提交的數據是作爲URL請求的一部分所以提交的數據量不能太大
POST方法
POST方法是GET方法的一個替代方法,它主要是向Web服務器提交表單數據,尤其是大批量的數據。POST方法克服了GET方法的一些缺點。通過POST方法提交表單數據時,數據不是作爲URL請求的一部分而是作爲標準數據傳送給Web服務器,這就克服了GET方法中的信息無法保密和數據量太小的缺點。因此,出於安全的考慮以及對用戶隱私的尊重,通常表單提交時採用POST方法。
3.7 Content
統計顯示收到的Http響應信息
如下圖所示:可以查看