无法从Gdrive下载文件:403禁止错误

时间:2020-02-19 14:32:47

标签: google-drive-api

我有一个具有Google驱动器文件选择器功能的网站,该功能可让用户从Gdrive帐户中选择文件并上传到我的网站。

此功能运行良好,但突然从最近3-4天开始停止工作,并且出现错误“ 403禁止访问:客户端没有权限”。 有人可以建议出什么问题吗?

1 个答案:

答案 0 :(得分:0)

您遇到的问题似乎主要是由于您没有在操作中使用有效访问令牌。

403 Forbidden客户端错误响应代码表示服务器理解了请求,但拒绝授权。

解决方案

确定访问范围

为了获得适当的访问令牌,您应该将访问令牌响应中包含的范围与访问依赖于Drive API的应用程序功能所需的范围进行比较。

如果您最近更改了应用程序的范围,则需要获取一个新访问令牌,该令牌将与您使用的新范围相对应。

可以这样声明多个作用域:

string[] scopes = new string[] { DriveService.Scope.DriveAppsReadonly,
                                 DriveService.Scope.DriveAppdata,
                                 ...
};

刷新您的访问令牌

根据Using OAuth 2.0 to Access Google APIs文档:

访问令牌具有有限的生存期。如果您的应用程序需要在单个访问令牌的生存期之外访问Google API,则可以获取刷新令牌。刷新令牌使您的应用程序可以获得新的访问令牌。

因此,为了仍然能够像以前一样执行所有操作,您将需要刷新访问令牌。

参考