从Google云端硬盘下载公共共享文件(遇到500错误)

时间:2016-01-10 15:59:48

标签: api google-api google-drive-api

我运行此请求:

https://www.googleapis.com/drive/v3/files/1TcBDyugpHQSyUCLZcM0XtHOXo0S9Neh6asQUAYh54EM/export?mimeType=application%2Fpdf&key=[apiKey]

在这个公共文件上:

  

https://docs.google.com/document/d/1TcBDyugpHQSyUCLZcM0XtHOXo0S9Neh6asQUAYh54EM/edit

显然可以PDF格式导出。我通过Google的API资源管理器运行同样的查询:Files: export

使用它获取的任何凭据,它告诉我应用程序/ pdf数据的响应是200 OK。但是,在浏览器中手动运行查询会给我:

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

我使用普通的File.get方法遇到类似的问题:

 https://www.googleapis.com/drive/v3/files/1TcBDyugpHQSyUCLZcM0XtHOXo0S9Neh6asQUAYh54EM?alt=media&key=[api key]

返回:

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "badRequest",
    "message": "Bad Request"
   }
  ],
  "code": 400,
  "message": "Bad Request"
 }
}

我只是做错了吗?任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:0)

API密钥用于访问PUBLIC数据。除非您的文件设置为公开,否则您将无法使用API​​密钥获取它。您需要使用Oauth2进行身份验证并使用访问令牌

  

https://www.googleapis.com/drive/v3/files/1TcBDyugpHQSyUCLZcM0XtHOXo0S9Neh6asQUAYh54EM?alt=media&access_token=[token]

Error documentation

  

400:错误请求

     

用户错误。这可能意味着未提供必填字段或参数,提供的值无效,或提供的字段组合无效。