【问题标题】:Listing files with search query returns out-of-scope results (drive.files.list call, using drive.files scope)使用搜索查询列出文件会返回超出范围的结果(drive.files.list 调用,使用 drive.files 范围)
【发布时间】:2013-04-04 21:23:00
【问题描述】:

我在使用 Google Drive SDK 时遇到了一个奇怪的问题——我不确定这是设计行为还是范围界定中的错误。

快速背景:我们正在使用“drive.files”范围开发应用程序(例如,仅由我们的应用程序创建的文件/文件夹)并且我们想要列出由我们的应用程序创建的所有文件夹。所以我们使用 drive.files.list 方法调用(使用 Javascript 客户端 API),查询驱动器文件夹 mimeType:

mimeType = 'application/vnd.google-apps.folder'

问题:返回的是用户云端硬盘帐户中所有文件夹的列表,而不仅仅是我们的应用创建的文件夹。

这不是公然违反范围吗?据我所知,文档并没有说明我们是否应该看到搜索查询返回的超出范围的文件。

可以使用 Google API 资源管理器重复此行为:

  1. 打开 Google API 资源管理器:Google APIs Explorer: drive.files.list with empty query
  2. 将 OAuth 授权设为 ON,仅使用 drive.file 授权。
  3. 使用空查询单击“执行”。结果列表应为空。
  4. 现在,在“q”参数框中输入文件夹查询:

    mimeType = 'application/vnd.google-apps.folder'

  5. 单击“执行”。结果列表显示用户云端硬盘帐户中由 API Explorer 应用创建的文件夹。

我在这里遗漏了什么吗?这是预期的行为吗?如果是这样 - 有没有更好的方法来获取仅由我们的应用创建的文件夹列表?

【问题讨论】:

  • 错误又回来了,但最糟糕的是:即使是空查询也会返回所有文件,即使是那些不是由应用程序创建的文件。

标签: google-drive-api


【解决方案1】:

感谢您的报告。该问题已得到修复,现在应该可以正常工作了。

【讨论】:

  • 这个问题已经纠正了吗? A similar issue was reported here。有什么地方可以追踪 4 月份修复的错误吗?
  • @SteveBazyl :错误仍然存​​在。尽管仅使用“drive.file”范围,我们仍然能够列出范围外的文件夹:这很容易证明using the API explorer!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-30
  • 1970-01-01
  • 2018-07-30
  • 1970-01-01
  • 2016-10-24
相关资源
最近更新 更多