如何构建访问google docs / drive文件夹的URL?

时间:2013-04-01 18:46:18

标签: php http google-docs-api google-drive-api

我想弄清楚如何制作raw request to Google driveaccess a public folder

https://www.googleapis.com/drive/v2/files?q=0B-eVxZFKAu61TmFQUUFPbzBmVVU&key=__________

但是,该URL会出现以下错误:

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "invalid",
    "message": "Invalid Value",
    "locationType": "parameter",
    "location": "q"
   }
  ],
  "code": 400,
  "message": "Invalid Value"
 }
}

这告诉我,也许我不应该传递q=内文件夹的ID。

在相关说明中,我知道您可以通过以下请求访问各个公共文件:

https://docs.google.com/document/pub?id=_____

2 个答案:

答案 0 :(得分:3)

您是正确的,因为您传递了q参数的无效值。 q参数接收字段,值和运算符的组合。您通过q传递了文件夹ID,但未指定与该ID匹配的字段。

您需要传递给q的是'0B-eVxZFKAu61TmFQUUFPbzBmVVU' in parents(不要忽略单引号!)。因此,您的查询将如下所示:https://www.googleapis.com/drive/v2/files?q='0B-eVxZFKAu61TmFQUUFPbzBmVVU'+in+parents&key={YOUR_API_KEY}

结帐this API page,详细了解q使用的格式。

答案 1 :(得分:1)

请尝试使用q的以下值:trashed=false and title contains 'Public Folder'

docs表示字段titleTitle of the file。但是我记得你也可以使用它来搜索文件夹名称。

您可能还希望通过包含mimeType字段来优化搜索。来自文档:

  

使用特定于文件夹的MIME类型搜索文件夹:

     

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

编辑 - 谷歌硬盘目前似乎遇到了问题,请明天尝试这样的事情:

https://www.googleapis.com/drive/v2/files?q=title contains 'Public Folder' and trashed=false&mimeType = 'application/vnd.google-apps.folder'&key={YOUR_API_KEY}