Google Drive API断点续传PUT请求返回400/404 Not Found错误求助
问题根因与修复方案
核心问题1:PUT请求URL参数被错误编码
你当前PUT请求的URL中参数分隔符&被URL编码为%26,导致Google Drive API无法正确解析upload_id参数,从而返回404 Not Found错误。
修复方式:将URL中的%26替换回原始的&分隔符,保证每个查询参数能被服务端正确识别。
其他需要修复的配置问题
- 初始化POST请求的parents参数格式错误:当前请求体中
parents字段被声明为字符串格式的"[1NJ--sanitized--ka5W4Zz9Tc]",正确格式应为JSON数组:"parents": ["1NJ--sanitized--ka5W4Zz9Tc"],去掉包裹数组的引号。 - PUT请求Content-Length配置错误:当前
Content-Length值对应的是base64编码后的字符串长度,而API要求该字段值为解码后二进制文件的实际大小。若保留Content-Transfer-Encoding: base64头,需要将Content-Length修改为base64字符串的实际长度;如果将base64内容解码为二进制后再上传,则对应填写二进制文件的字节长度即可。 - PUT请求缺失Content-Type头:需要在PUT请求头中添加
Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,和初始化请求中X-Upload-Content-Type的取值保持一致。
内容的提问来源于stack exchange,提问作者Scott Miller
相关产品推荐
相关产品推荐

