You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

使用Google Drive API通过父ID获取文件夹列表报Bad Request问题求助

解决Google Drive API获取指定父文件夹下文件夹的Bad Request问题

看起来你在调用Drive API获取文件夹列表时踩了个常见的小坑——别急,既然你已经能成功在目标文件夹下创建文件/文件夹,说明权限和访问Token都是没问题的,大概率是请求方法或者参数格式出了错。

核心问题:你可能用错了请求方法

Google Drive v3 API的文件列表查询接口是GET请求,而不是创建资源时用的POST请求。很多人会因为创建操作习惯了POST,下意识用同样的方法去查列表,这直接就会返回Bad Request错误。

正确的Postman操作步骤

  1. 新建GET请求,输入API端点:

    https://content.googleapis.com/drive/v3/files
    
  2. 添加必要的查询参数(切换到Params标签):

    • 第一个参数(必填):
      • Key: q
      • Value: '你的父文件夹ID' in parents and mimeType='application/vnd.google-apps.folder'

      注意:父文件夹ID必须用单引号包裹,mimeType要严格对应Google文件夹的固定类型,这个值不能写错。

    • 第二个参数(可选但推荐):
      • Key: fields
      • Value: files(id,name)

      这个参数用来指定返回的字段,避免冗余数据,也能减少不必要的权限校验问题,你可以根据需求添加createdTimemodifiedTime等字段。

  3. 配置请求头(切换到Headers标签):

    • 添加Authorization头,值为:Bearer 你的访问Token

    这个Token和你创建文件时使用的是同一个,确保它包含drive.readonly或者drive的权限范围。

  4. 发送请求,现在应该能正常返回指定父文件夹下的所有文件夹列表了。

额外错误排查点

  • 如果还是收到Bad Request,先检查q参数格式:有没有漏写单引号?父ID是不是复制错误?mimeType有没有拼写失误?
  • 再次确认请求方法是GET,绝对不能用POST(POST仅用于创建资源)。
  • 确保你的访问Token没有过期,或者权限足够访问目标父文件夹(你能创建文件,这一点大概率没问题)。

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

火山引擎 最新活动