如何在python中发布带有请求的有效负载?

时间:2020-07-20 08:57:54

标签: python python-requests

这是我在镀铬中使用f12观察到的结果: chrome output

这里的有效负载似乎不是json数据,因为前面有89:42。

payload = ["auth",{"form":{"id":"xxxx","email":"xxx@xxx"}}]
resp = requests.post(url, json=payload, headers=headers)
print(resp.status_code)

payload = '89:42["auth",{"form":{"id":"xxxx","email":"xxx@xxx"}}]'
resp = requests.post(url, data=payload, headers=headers)
print(resp.status_code)

上述响应的状态码均为400(错误请求)。如何正确发布?

[EDIT]我实际上使用了Session来维护会话。我还尝试将内容类型更改为application/json。但这没有用。正如您在图片中看到的那样,使用f12看到的默认内容类型是text/plain

[EDIT]有人说datajson参数必须是dict。这是否意味着我应该重写89:42["auth",{"form":{"id":"xxxx","email":"xxx@xxx"}}]并将其类型更改为dict?我该怎么办?

1 个答案:

答案 0 :(得分:1)

通过阅读requests documentation,您需要像这样将量作为有效成分传递:

response = requests.post('https://httpbin.org/post', data = {'key':'value'})