python - 使用请求库将 CURL 请求转换为 Python
问题描述
有这样的 CURL 请求:
curl -X POST "https://page.com/login"
-H "accept: application/json" -H "Content-Type: application/json"
-d "{ \"username\": \"admin\", \"password\": \"pass\"}"
在 Python 中,我想它应该是这样的:
import requests
headers = {
'Accept': 'application/json',
'Content-Type': 'application/json'
}
data = {'username': 'admin', 'password': 'pass'}
response = requests.post('https://page.com/login', headers=headers, data=data)
response
在此之后,它给我 [502] 错误网关错误。我的 python 查询做错了什么以及应该如何修改它?
解决方案
尝试使用:
requests.post(..., json=data)
当您使用data=
请求时,会将其以编码形式发送,以实际将 json 放入您必须使用的正文中json=
推荐阅读
- javascript - 可以将繁琐的连接和请求事件侦听器放在 Node.js 的单独模块中吗?
- python-3.x - pytesseract 无法识别图像中的字符
- asynchronous - 出站 ChannelHandler 的包罗万象的异常处理
- google-drive-api - GoogleDrive API 策略限制导出下载 10 mb
- jquery - 即使验证失败,表单也会提交
- visual-studio - QT Visual Studio Tools Embedded 编译和调试
- ms-access - 将用户名插入到 Desktp 的路径中
- bash - 从 shell 中删除文本文件的第一个字符
- java - 如果属性不为空,则使用 Hibernate 在表中插入属性
- assembly - PIC 编程:将文字移动到文件?