查看 Python 脚本发出的 POST 请求的 headers 和 body

View headers and body of a POST request made by Python Script

在我的申请中,我的 API 位于 localhost:8000/api/v0.1/save_with_post

我还制作了一个 Python 脚本,以便在 Api 上执行 Post 请求。

### My script
import requests

url = 'localhost:8000/api/v0.1/save_with_post'
myobj = {'key': 'value'}

x = requests.post(url, data = myobj)

是否可以在 Chrome 中查看请求的 headers 和 body 而不是调试我的应用程序代码?

你想要Postman.

使用 Postman,您可以从 Postman 本身生成对您的服务的请求,或者将 Postman 设置为代理,这样您就可以看到 API 客户端生成的请求以及来自服务器的响应。

如果您想查看 post 请求的响应 headers,您是否尝试过:

>>> x.headers

或者您可以将 headers 自己添加到您的 POST 请求中:

h = {"Content-Type": "application/xml", ("etc")}
x = requests.post(url, data = myobj, headers = h)

好吧,我不知道是否有一种方法可以直接在 Chrome DevTools 中查看请求(我认为没有)但是,我知道有两种方法可以查看请求正文和响应:

1 - 将 selenium 与 chrome webdriver
一起使用 这将使您 运行 chrome 由 python 自动化。然后你可以打开一个测试页面并在其中 运行 javascript 来执行你的 post 请求, 有关如何执行此操作的更多信息,请参阅此内容:

您需要使用 Selenium-requests 库才能将请求库与 selenium 一起使用

2 - 使用 Wireshark
该程序将允许您查看网卡上的所有流量,因此您将能够监控所有来回的请求。但是,Wireshark 会抛出您网卡发送或接收的所有流量,因此可能很难看到您想要的特定请求