gpt4 book ai didi

android - GoogleAuthUtil.getToken 返回无效的验证码

转载 作者:IT老高 更新时间:2023-10-28 23:25:29 25 4
gpt4 key购买 nike

我使用以下内容来获得可以从 Android 应用访问后端的身份验证。这在此处进行了描述 https://developers.google.com/identity/protocols/CrossClientAuth .

StringBuffer sb = new StringBuffer();
sb.append("oauth2:server:client_id:");
sb.append(getString(R.string.google_app_id));
sb.append(":api_scope:");
sb.append("profile email");
final String scope = sb.toString();
String token = GoogleAuthUtil.getToken(Activity.this, mAuthAccount, scope);

(mAuthAccount 之前是使用 AccountPicker.newChooseAccountIntent 设置的。)

上面返回一个短暂的验证码,有时已经过期。我想对照谷歌服务器检查它,但调用 https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=从 GoogleAuthUtil.getToken 返回的 token 字符串返回“无效 token ”。

在我尝试使用之前如何验证验证码没有过期?

编辑:返回的字符串不是 token ,而是可以与google API交换以获得 token 的授权码(返回的字符串以“/4”开头,而不是“/1”或“/2”如果我没记错的话)。

代码并不总是有效(在我的服务器上),我希望能够检查代码是否可以使用或已过期。

最佳答案

你不需要使用app_id来获取oauth token,你只需要改变范围

"oauth2:" + Scopes.PLUS_LOGIN

在这种情况下,您的范围可以是 plus.login

更多信息:

Authorizing with Google for REST APIs

Scopes Class

关于android - GoogleAuthUtil.getToken 返回无效的验证码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30382102/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com