Google Drive API downloadURL 401错误

时间:2016-07-18 13:24:54

标签: google-drive-api

任何人都可以帮助或启发我的问题:

我是一名Java开发人员,我有一个名为GDrive App的现有智能打印机应用程序。它使用Google Drive API(oauth 2.0,gdata-version 2.0和3.0用于下载打印文件)。

直到现在这已经工作了几个月。实际上,这次只有下载打印部分不再工作,我仍然可以访问应用程序(检索文件,创建文件夹,搜索和删除文件)。

实际问题: 当我尝试下载文件(到输入流)进行打印时,我一直收到401错误。这令人困惑,因为我已经在请求期间提供了所有必要的信息。它已经工作了好几个月。没有更改代码。怪异。

我有这个标题: [授权:bearer ya29.CjAkA8uPBUsKWYMSEDpPxUbP_vtQJOKfCZ7O8I4GkpUkN70bGgnDTAVYiVW2m353H2Y ,GData-Version:3.0 ]

执行此URL以下载和打印资源时,我无法访问此内容。

https://doc-0o-7o-docs.googleusercontent.com/docs/securesc/l9c2gms12ko7qqfc58putbb2v38kkvmm/dp5l9kmpu48kdi8mp2rvtmc1dm1f41tk/1468828800000/09859633411849852329/09859633411849852329/0ByU-nFK_03gtZGhBZkxCYmExeGc?e=download&gd=true

1 个答案:

答案 0 :(得分:0)

错误401表示您未获得正确授权。很可能您使用的ya29.CjAkA8uPBUsKWYMSEDpPxUbP_vtQJOKfCZ7O8I4GkpUkN70bGgnDTAVYiVW2m353H2Y访问令牌已过期,您必须请求另一个。

  

您应该编写代码以预测授予的令牌可能不再有效的可能性。由于以下原因之一,令牌可能会停止工作:

     
      
  • 用户已撤销访问权限。
  •   
  • 该令牌已使用六个月。
  •   
  • 用户更改了密码,令牌包含Gmail,日历,   通讯录或环聊示波器。
  •   
  • 用户帐户已超过一定数量的令牌请求。
  •   

source

您可以使用GoogleAuthorizationCodeTokenRequest来请求访问令牌,也可以使用刷新令牌。