使用wireshark在windows下抓包,http请求。
在过滤工具栏文本框处填写过滤条件,点击开始捕获按钮即可,捕获到期望的结果后可以点击停止按钮,另外还可以保存或另外为捕获结果。
过滤条件:
比如指定http请求域名:http.host==example.com
提取http请求内容原文
在结果列表选中自己所需的http请求,在下面“分组字节流”窗口下分为左右两块,左边为字节流Hex十六进制值,以及右边相应的ASCII字符。
右击此字节流窗口的内容区域,选择“Copy Bytes as Hex + ASCII Dump”后,在文本工具中粘贴即可。
复制出来的内容中,ASCII字符的换行符显示为点符号(可能还会其他特殊符号也做了某种处理)而不是换行。
将内容复制到Notepad++工具,把左边的Hex列复制到新窗口,把其中的空格和换行都去掉,然后在插件菜单>>Converter>Hex-->ASCII即可转为ASCII字符。
以下是转换后的ASCII字符示例(其中POST前面还有一串乱码已去掉)。
POST /foo/bar?signature=aaa×tamp=1689748857&nonce=540106188&encrypt_type=aes&msg_signature=bbb HTTP/1.0
Host: example.com
X-Real-IP: 127.0.0.10
REMOTE-HOST: 127.0.0.10
X-Forwarded-For: 127.0.0.10
Connection: close
Content-Length: 571
User-Agent: Mozilla/4.0
Accept: */*
Pragma: no-cache
Content-Type: text/xml
<xml>
<AppId><![CDATA[xxx]]></AppId>
<Encrypt><![CDATA[xxx-xxx]]></Encrypt>
</xml>