如何检查Python HTTP客户端的网络通信?

5 投票
2 回答
1909 浏览
提问于 2025-04-17 08:40

我正在尝试找出一个错误,这个错误可能出现在Python的httplib2 HTTP客户端或者某个API上。(我猜可能是API的问题。)在使用httplib2向一个RESTful API发送数据时,我收到了401的响应状态(表示没有授权),但数据却成功保存到了API上。

我想查看发送给客户端的HTTP请求和响应,也就是那些发送到网络上和从网络上接收到的字符串。httplib2的代码看起来太复杂了,可能不容易从中捕捉到这些值,而且可能会漏掉错误。

我觉得直接查看客户端与网络之间的通信会更快。有没有什么工具可以用来监控客户端与本地网络插座之间的通信呢?

2 个回答

2

http://www.wireshark.org/ 这个网站可以让你监控本地的网络连接。我在Windows上也能通过一些小技巧监控本地的回环连接。

http://wiki.wireshark.org/CaptureSetup/Loopback 这里可以查看其他的替代方案。

或者,你也可以自己写一个简单的套接字服务器,让它在一个端口上监听客户端的连接,同时在另一个端口上发送数据到服务器,反之亦然,并且打印出所有的数据。这样写的代码不会超过十几行。

4

我用http://www.charlesproxy.com这个工具来调试我的网络问题。

撰写回答