3

我有这个关于谷歌驱动器的问题。这是我的申请 在此处输入图像描述

正如你在这里看到的。我想浏览并将文件上传到谷歌驱动器。但是每次我上传文件时,我都需要允许并将身份验证复制到我的应用程序中......就像这里

在此处输入图像描述

是否可以允许访问一次?有没有其他方法可以解决这个问题?我可以自动允许访问我的应用程序中的身份验证代码,这样我就不能使用浏览器了吗?

4

3 回答 3

4

如果您正在运行服务器应用程序,如何使用 OAuth2?您不需要使用用户控制台。

GoogleCredentials credentials = new GoogleCredential.Builder()
     .setTransport(HTTP_TRANSPORT)
     .setJsonFactory(JSON_FACTORY)
     .setServiceAccountId("[[SERVICE_ACCOUNT_EMAIL]]")
     .setServiceAccountScopes(DriveScopes.DRIVE, DriveScopes.DRIVE_FILE,
         "https://www.googleapis.com/auth/userinfo.email",
         "https://www.googleapis.com/auth/userinfo.profile")
     .setServiceAccountPrivateKeyFromP12File(Auth.keyFile)
     .setServiceAccountUser("[[impersonateduser@domain]]")
     .build();
credentials.refreshToken();

我发现了这个关于 OAuth2 的博客:

http://blog.databigbang.com/automated-browserless-oauth-authentication-for-twitter/

于 2012-12-29T17:24:24.700 回答
4

您需要请求的是“离线”访问。这将为您提供一个刷新令牌,您可以使用它来永久获取新的访问令牌,或者直到用户撤销它。

有关 .NET 示例,请参阅https://developers.google.com/drive/credentials

于 2013-01-08T01:27:34.290 回答
2

请查看Authorizing with stored credentials in Authorization for Google Drive。基本上,只要存储的 access_token 未过期,您就可以访问该帐户。

于 2013-01-07T08:37:37.923 回答