【问题标题】:Dropbox API, Python3, Requests 400 Bad RequestDropbox API,Python3,请求 400 错误请求
【发布时间】:2023-03-08 03:00:01
【问题描述】:

我能够验证并连接到 DropBox API 并运行 team-members-list

但是当我尝试在请求中使用附加标头和数据运行 team-members-remove 时出现以下错误。

requests.exceptions.HTTPError: 400 Client Error: Bad Request for url:

添加try时:

从无引发 JSONDecodeError("期望值", s, err.value)
json.decoder.JSONDecodeError:预期值:第 1 行第 1 列(字符 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 for Business API

【问题讨论】:

  • @Tomalak 感谢格式化。看起来好多了。以后会以这种方式提交。
  • 没问题。不幸的是,无法帮助您解决问题本身。

标签: json python-3.x python-requests dropbox-api


【解决方案1】:

我出错的地方是我试图通过 json.loads 运行 response.text,例如

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)

【讨论】:

    猜你喜欢
    • 2022-01-04
    • 2020-11-08
    • 2020-11-13
    • 2011-06-18
    • 2017-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-20
    相关资源
    最近更新 更多