You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Drive API v2无法下载部分xlsx、pdf文件 报400 Bad Request错误

Google Drive API V2 部分文件下载400 Bad Request 修复方案
  • 先排查文件属性问题
    • 确认报错文件是否为谷歌Workspace原生格式(文档、表格、幻灯片、表单等),这类文件没有直接的下载地址,用普通文件下载接口请求会直接返回400错误,需要调用files.export接口指定导出格式(比如docx、xlsx、pdf等)后再下载。
    • 确认报错文件是否存放在共享盘内,Drive API V2默认不支持共享盘文件请求,必须额外加参数才能正常请求共享盘资源。
    • 确认API使用的账号对目标文件有至少只读权限,V2版本存在权限不足时返回400而非标准403状态码的已知问题。
  • 代码修复方案
    1. 新增共享盘支持参数,修改SDK调用代码如下:
public InputStream download() throws IOException {
        return driveService.files()
                .get(file.getId())
                .setSupportsAllDrives(true)
                .executeMediaAsInputStream();
}
  1. 新增文件类型判断逻辑,根据文件mimeType区分下载/导出逻辑:
    先调用file.getMimeType()获取文件类型,如果是谷歌原生格式,走export接口导出,否则走原有下载逻辑。
  2. 开启HTTP请求日志打印,获取完整错误信息:默认异常栈仅返回通用Bad Request描述,开启请求日志后可以拿到完整的响应体,里面会标注具体的错误原因,方便精准定位问题。
  • 版本兼容建议
    Google Drive API V2已经于2021年正式停止维护,官方已经全面迁移到V3版本,V3版本修复了大量V2存在的状态码异常、参数兼容问题,相同下载逻辑在V3版本中不会出现无明确原因的400错误,条件允许的话建议优先升级到V3版本API。

内容的提问来源于stack exchange,提问作者ramvirsingh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 21:45:06