1

我想问和有什么区别?换句话说,这两种形式有什么区别:DriveScopes.DRIVE_METADATA_READONLYhttps://www.googleapis.com/auth/drive.readonly.metadata

https://www.googleapis.com/auth/drive.metadata.readonly //DriveScopes.DRIVE_METADATA_READONLY
https://www.googleapis.com/auth/drive.readonly.metadata

当我使用服务帐户使用Drive API时,我花了很长时间才弄清楚为什么我的应用程序会抛出未经授权的异常

Uncaught exception from servlet
com.google.api.client.auth.oauth2.TokenResponseException: 403
{
    "error" : "access_denied",
    "error_description" : "Requested client not authorized."
}

String 常量DriveScopes.DRIVE_METADATA_READONLY导致了异常。我应该在什么情况下使用这个常量?

4

1 回答 1

1

这显然是 Java API 客户端中的一个错误。

API 文档指出正确的范围是:

https://www.googleapis.com/auth/drive.readonly.metadata

而当您查看最新的 javadoc(在此答案时)时,您会得到:

https://www.googleapis.com/auth/drive.metadata.readonly

您应该忽略该DriveScopes常量并创建自己的常量,而 Google Drive 团队会修复此问题。

于 2015-02-04T02:32:05.523 回答