通过TShark获取完整的HTTP请求描述

通过TShark获取完整的HTTP请求描述,http,sniffer,tshark,Http,Sniffer,Tshark,我需要使用TShark嗅探器获得HTTP请求的完整描述。我的意思是类似Wireshark的GUI,您可以在其中获得: 原始请求数据(压缩/解压缩) 打印精美的提取HTTP字段:(主机、接受的编码、cookie等) 现在,我可以用以下方法解析HTTP: tshark -i eth0 -f 'dst host xxx.xxx.xxx.xxx' -d tcp.port=80,http 它打印出如下内容: 139389.228821 x.x.x.x -> y.y.y.y HTTP GET

我需要使用TShark嗅探器获得HTTP请求的完整描述。我的意思是类似Wireshark的GUI,您可以在其中获得:

  • 原始请求数据(压缩/解压缩)
  • 打印精美的提取HTTP字段:(主机、接受的编码、cookie等)
现在,我可以用以下方法解析HTTP:

 tshark -i eth0 -f 'dst host xxx.xxx.xxx.xxx' -d tcp.port=80,http
它打印出如下内容:

139389.228821 x.x.x.x -> y.y.y.y HTTP GET /test.html HTTP/1.1
或者我可以打印cookie(或所有cookie?),例如:

tshark -i eth0 -f 'dst host xxx.xxx.xxx.xxx' -T fields -e http.cookie

但我需要完整的HTTP请求描述和原始数据。有可能吗?

如果只是监视来自您自己计算机的流量,请尝试


或者使用Firefox的Firebug和/或Live HTTP头,和/或Web开发者工具栏。注意:请参阅评论以获得公认的答案。

Curl也许能帮你做到这一点。通过curl发布数据时,请使用
-v
-i
选项。您还可以使用
-b
-c
将cookie信息读/写到文件中,以便查看它

这可能不是您想要的,因为听起来您已经有了一个程序来进行发布,但是如果您可以重新创建post并使用curl发送,您将看到所有原始数据(使用正确的选项时)


Curl文档是

它是一个带有控制台的Linux服务器。别以为我会用小提琴。无论如何,如果我有GUI,我会使用Wireshark而不是TShark。我确实需要嗅探器来调试特定程序的行为。我想如果你已经在使用TShark,你能将所有tcp流量捕获到特定端口,并将输出保存在某个地方吗。您将能够重建对话并以这种方式获取原始数据-只要其HTTP不是HTTPS!啊,试试-V旗来切克。就在这上面看到了,好的。我试试看。谢谢,-V(和-w表示原始数据)返回我需要的所有内容。