Java 使用GoogleAuthUtil获取Web后端的脱机访问
我正在尝试使用Android应用程序为我的web后端获取授权代码。根据,我应该调用Java 使用GoogleAuthUtil获取Web后端的脱机访问,java,android,oauth-2.0,Java,Android,Oauth 2.0,我正在尝试使用Android应用程序为我的web后端获取授权代码。根据,我应该调用GoogleAuthUtil.getAuthToken(),其作用域类似于oauth2:server:client\u id::api\u作用域:resource-1 resource-2 以下是我如何形成范围: private String getOAuthScope() { final String scope = "email openid"; return String.format("oa
GoogleAuthUtil.getAuthToken()
,其作用域类似于oauth2:server:client\u id::api\u作用域:resource-1 resource-2
以下是我如何形成范围:
private String getOAuthScope() {
final String scope = "email openid";
return String.format("oauth2:server:client_id:%s:api_scope:%s",
GoogleOAuthData.GOOGLE_OAUTH_SERVER_CLIENT_ID, scope);
当我调用
GoogleAuthUtil.getAuthToken()
时,我得到一个无效的\u范围
异常。形成范围的正确方式是什么 我最初认为您使用了不正确的作用域名称(例如“email”而不是“”),但根据这些名称,这些名称对于该特定用途是正确的。但是,预期的作用域字符串似乎是“openid,email”
而不是“email openid”
“未知”异常的一个来源是您的服务器和客户端不属于同一个API控制台项目。这不是对问题的直接回答,但。。。每当您遇到类似这样的oauth问题时,我发现最好的调试技术就是跟踪网络请求。你通常可以直接看到问题是什么。对于Android,这里描述了这一点嘿@Ivan Gromov,这曾经对我有用,但就在几天前它停止了工作,现在它抛出了这个错误com.google.Android.gms.auth.GoogleAuthException:未知。知道为什么吗?我的示波器有问题吗?同样的例外:我不知道。