Dropbox API、Python3、请求 400 错误请求
Dropbox API, Python3, Requests 400 Bad Request
我能够验证并连接到 DropBox API 和 运行 team-members-list
。
但是当我尝试 运行 team-members-remove
以及请求中的附加 header 和数据时出现以下错误。
requests.exceptions.HTTPError: 400 Client Error: Bad Request for url:
添加时try
:
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Python 目前代码:
headers = {'Authorization': 'Bearer ' + TOKEN}
url = 'https://api.dropboxapi.com/2/team/members/remove'
data = {
"user": {".tag": "team_member_id", "team_member_id": userid},
"wipe_data": "true",
"transfer_dest_id": {".tag": "team_member_id", "team_member_id": adminid},
"transfer_admin_id": {".tag": "team_member_id", "team_member_id": adminid},
"keep_account": "false",
}
response = requests.post(url, data=data, headers=headers)
我已尝试对上述内容进行一些修改,包括:
headers = {'Authorization': 'Bearer ' + TOKEN, "Content-Type": "application/json" }
response = requests.post(url, json=data, headers=headers)
data = json.dump(data)
这里记录了一些这样的错误,我已经阅读了它们并实施了建议,但仍然无法解决这个问题。
非常感谢任何指点。
背景:
- Python 3.5.2
- 请求
- 商业 Dropbox API
我出错的地方是我试图 运行 response.text 到 json.loads 例如
message = json.loads(response.text)
我把这个改成
print(response.text)
通过这种方式,我看到了有用的错误消息。
代码现在看起来像这样并且可以正常工作:
headers = {"Authorization": "Bearer " + TOKEN, "Content-Type": "application/json"}
jsondata = json.dumps(data)
response = requests.post(url, data=jsondata, headers=headers)
我能够验证并连接到 DropBox API 和 运行 team-members-list
。
但是当我尝试 运行 team-members-remove
以及请求中的附加 header 和数据时出现以下错误。
requests.exceptions.HTTPError: 400 Client Error: Bad Request for url:
添加时try
:
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Python 目前代码:
headers = {'Authorization': 'Bearer ' + TOKEN}
url = 'https://api.dropboxapi.com/2/team/members/remove'
data = {
"user": {".tag": "team_member_id", "team_member_id": userid},
"wipe_data": "true",
"transfer_dest_id": {".tag": "team_member_id", "team_member_id": adminid},
"transfer_admin_id": {".tag": "team_member_id", "team_member_id": adminid},
"keep_account": "false",
}
response = requests.post(url, data=data, headers=headers)
我已尝试对上述内容进行一些修改,包括:
headers = {'Authorization': 'Bearer ' + TOKEN, "Content-Type": "application/json" }
response = requests.post(url, json=data, headers=headers)
data = json.dump(data)
这里记录了一些这样的错误,我已经阅读了它们并实施了建议,但仍然无法解决这个问题。
非常感谢任何指点。
背景:
- Python 3.5.2
- 请求
- 商业 Dropbox API
我出错的地方是我试图 运行 response.text 到 json.loads 例如
message = json.loads(response.text)
我把这个改成
print(response.text)
通过这种方式,我看到了有用的错误消息。
代码现在看起来像这样并且可以正常工作:
headers = {"Authorization": "Bearer " + TOKEN, "Content-Type": "application/json"}
jsondata = json.dumps(data)
response = requests.post(url, data=jsondata, headers=headers)