gpt4 book ai didi

python - Google 云端硬盘断点续传上传失败

转载 作者:太空宇宙 更新时间:2023-11-03 17:57:56 25 4
gpt4 key购买 nike

我正在尝试使用 Google Drive 可续传上传 api 上传文件[ https://developers.google.com/drive/web/manage-uploads#resumable]在流程的第 3 步中,我总是收到 400 状态代码以及无效的上传请求。

对于第 1 步( Starting a resumable session ),我获取了 session uri,当我上传内容时,我收到了错误的请求错误。

REQUEST HEADERS:
{
"X-Upload-Content-Length": 249159,
"X-Upload-Content-Type": "application/pdf",
"content-type": "application/json",
"Authorization": "Bearer ya..."
}

REQUEST BODY:
{
"parents": [
{
"id": "0B..."
}
],
"title": "New file.pdf"
}

我得到了 session URI 的响应,如下所示https://www.googleapis.com/upload/drive/v2/files?uploadType=resumable&upload_id=AEnB2UpNCcQgsbuqKer6z25jVRX4ijweQkpAJ1aQ1nEQPGi_ODtvob9vSwQk2oyjzyUNQs-b2HenMst92HQo6WMKmQyO1lgTww

对于步骤 3( Uploading the file )这是请求 header 。

{
"Content-Length": 249159,
"Accept-Encoding": "gzip, deflate",
"Accept": "*/*",
"User-Agent": "python-requests/2.3.0 CPython/2.7.8 Darwin/14.0.0",
"Content-Range": "bytes 0-249159/249159",
"Content-Type": "application/pdf",
"Authorization": "Bearer ya..."
}

请求正文中包含的数据的长度又是相同的。数据是使用 python requests 模块从另一个 url 获取的 block 。

以下是google对上述请求的响应

{
"error": {
"errors": [
{
"domain": "global",
"reason": "badRequest",
"message": "Invalid Upload Request"
}
],
"code": 400,
"message": "Invalid Upload Request"
}
}

它适用于除 Google Drive 之外的其他云(相同的方法)。我在这里缺少什么?

最佳答案

我终于自己搞定了。这是代码中的一个错误,其中最后一个 block 的内容范围偏离了 1 个字节。

关于python - Google 云端硬盘断点续传上传失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28222769/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com