我正在使用 requests 库处理 POST 请求。
如果我在有效负载中使用回车符,我的帖子请求工作正常,如下所示:
payload = "{\r\n \"name\": \r\n {\r\n \"@action\": \"login\",\r\n \"@appname\": \"app\",\r\n \"@class\": \"login\",\r\n \"@nocookie\": 1,\r\n \"@code\": \"101\",\r\n \"@psw\": \"12345\",\r\n \"@relogin\": \"0\",\r\n \"@username\": \"user123\"\r\n }\r\n}\r\n"
Run Code Online (Sandbox Code Playgroud)
但是,如果我对其进行格式化以使有效负载看起来很漂亮,则请求将不起作用:
payload = {
'name':
{
'@action': "login",
'@appname': "app",
'@class': "login",
'nocookie': 1,
'@code': "101",
'psw': "12345",
'@relogin': "0",
'@username': "user123"
}
}
Run Code Online (Sandbox Code Playgroud)
我使用第二个有效负载时收到 500 错误。第一个有效负载按预期工作。有任何想法吗?
最有可能的是,您只需要首先使用该函数json.dumps从您的结构创建一个 JSON 字符串:
data = json.dumps(payload)
Run Code Online (Sandbox Code Playgroud)
然后使用该data变量代替原来的payload.
| 归档时间: |
|
| 查看次数: |
6224 次 |
| 最近记录: |