从应用程序中嗅探GET和POST请求的HTTP数据包

63

我正在使用C#编写一款与SEO相关的工具,用于进行关键词研究。我需要调用Google Adword关键词工具。目前我知道有一些已经完成相同功能的工具。

我只需要弄清楚他们是如何实现的。我尝试使用Wireshark,但是通过Wireshark获取实际的POST数据非常复杂。

我尝试在IE上使用fiddler,但似乎会发出太多的JavaScript请求,这使得fiddler很难混淆。

如果我能找到其他工具正在发出的确切请求,我觉得我的工作就完成了。我该怎么做?


3
使用Wireshark获取HTTP Post数据非常简单。首先,确保设置了“HTTP”显示过滤器,以便只看到与HTTP相关的数据包而没有其他内容。然后您可以根据需要查看数据包的内容。Wireshark会为您将Post数据与HTTP头分开显示。 - Remy Lebeau
1
@remy,你有这方面的任何教程链接吗?我已经折腾了过去两天,但成果甚微。 - Sumit Ghosh
2个回答

114
http.request.method == "POST" 放在Wireshark的显示过滤器中,可以仅显示POST请求。点击数据包,然后展开超文本传输协议字段,在顶部就能看到POST数据。

4
如果您将显示过滤器仅设置为 HTTP,则可以同时查看 GET 和 POST 请求。 - Remy Lebeau
7
使用 http.request 发送 GET 和 POST 请求。 - Vivek Raj
记得使用大写的 BTW。 - Isilmë O.
是的,您将获得整个数据包,已解析出来。 - Karl Bielefeldt
3
不,它不会显示通过https提交的帖子数据。它会显示已加密的应用程序数据。 - David Okwii
你可能也想将其与“tcp contains something”组合使用。 - Pablo Bianchi

0

如果你想获取这种类型的数据,你将不得不使用某种网络嗅探器,并且你可能会遇到与使用Wireshark时相同的问题(从整个网络流量中提取相关数据)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接