2010-12-17 220 views
0

我正在用檢查http流量的pcap庫編寫一個嗅探器程序。當我尋找GET消息或狀態代碼時,我成功了,但我不知道爲什麼它不適用於發佈請求。 我試圖使用wireshark,我看到,對於POST請求,除了http協議,還有一個基於行的文本數據:application/x-www-form-urlencoded「protocol」。 當我試圖打印有效載荷的內容時,我沒有得到結果,或者我得到了奇怪的字符..所以我在想,也許問題是這個「基於線..」的東西.. 任何想法的可能性原因?Http POST ..爲什麼不打印任何東西?

+1

向我們展示源代碼!!! – 2010-12-17 17:24:36

回答

1

奇怪的字符可能來自UTF-8編碼,而不是ascii編碼的POST。它還取決於您希望捕獲哪些應用程序,因爲某些Flash應用程序使用POST請求但加密它們以防篡改。

+0

嗯我試圖嗅探這個:http://www.snee.com/xml/crud/posttest.html – cenos 2010-12-17 17:35:16

+0

我解析的TCP協議的數據包有效負載,以找到「POST」字符串,但我沒有找到任何東西.. – cenos 2010-12-17 17:36:10

+0

90e2e550是從一個538字節的數據包 – cenos 2010-12-17 21:31:49

0

編輯:See my answer to your other question

這就是我與tcpdump的捕捉。你看到了什麼?

POST /xml/crud/posttest.cgi HTTP/1.1 
Host: www.snee.com 
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.12) Gecko/20101027 Fedora/3.6.12-1.fc13 Firefox/3.6.12 
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
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: 115 
Connection: keep-alive 
Referer: http://www.snee.com/xml/crud/posttest.html 
Content-Type: application/x-www-form-urlencoded 
Content-Length: 21 

fname=test&lname=test 
+0

我看到所有..所以它應該也在我的代碼中工作.. – cenos 2010-12-17 19:41:00

相關問題