列出带有查询的文件时出错

时间:2013-07-09 08:43:35

标签: google-drive-api

当我尝试通过列出不同的查询标准来检索文件夹时,在Python中,我收到错误HTTP 500 "Internal error"

请求该文件夹的代码如下:

q = ["'root' in parents", "title='test'", "mimeType='application/vnd.google-apps.folder'", "trashed=false"] default_folder_list = service.files().list(q=' and '.join(q), fields="items/id").execute()

如果我删除标题或父母标准,它就有效。如果我尝试使用API explorer,它也可以完美运行。 我的应用只有drive.file权限。

这个错误可能是什么原因?

3 个答案:

答案 0 :(得分:4)

这是drive.file范围的已知问题,对查询另外使用drive.readonly.metadata

编辑:看起来查询也被drive.appdata范围破坏了。我确保我们尽快修复它。

答案 1 :(得分:2)

G建议您的应用应退避并重试500错误。您是否尝试过此操作并且在重试时是否一直失败?

答案 2 :(得分:0)

我发现了同样的问题,它与后退或等待没有任何关系...... API资源管理器工作正常,但是从资源管理器开发的下一个选项卡中的URL每次都会失败。不经常......总是!

问题似乎与查询比单个项目更复杂有关。例如如果我要求姓名=或父母的东西,那么它的工作原理。如果我将两者结合使用“和”则失败。

例如:

https://www.googleapis.com/drive/v3/files?q=%270B0ap0WDOII5mbjdwajNBMlRoZUU%27+in+parents&key= {my key}

工作正常,但

https://www.googleapis.com/drive/v3/files?q=%270B0ap0WDOII5mbjdwajNBMlRoZUU%27+in+parents+and+name%3D%27test.TXT%27&key= {my key}

失败
{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "internalError",
    "message": "Internal Error"
   }
  ],
  "code": 500,
  "message": "Internal Error"
 }
}

请注意,这两个网址都是直接从“API的资源管理器”部分复制的 https://developers.google.com/drive/v3/reference/files/list 将我的API密钥添加到每个结尾。

它也与v2接口完全相同。

API中是否存在错误?与公共文件夹中的文件有关吗?