首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >https://www.googleapis.com/oauth2/v4/token在Android上总是返回unsupported_grant_type /无效的grant_type

https://www.googleapis.com/oauth2/v4/token在Android上总是返回unsupported_grant_type /无效的grant_type
EN

Stack Overflow用户
提问于 2017-10-14 00:47:03
回答 2查看 2.6K关注 0票数 2

我有一个离子应用程序,登录用户使用谷歌身份验证。它将id_token和access_token传递给节点服务器,然后节点服务器使用id_token验证用户,并使用access_token调用用户的Google帐户。

当从浏览器使用Ionic应用程序时,它使用gapi登录用户并获取令牌,这很好用。对于iOS和Android,它使用了官方的Cordova插件(cordova- plugin -googleplus)。

对于iOS,插件总是返回两个令牌,一切都很好。对于Android,不会返回任何access_token。因此,我按照说明获取了一个serverAuthCode,这也是有效的。将serverAuthCode换成access_token就是问题所在。

Google官方说明提供了示例请求

代码语言:javascript
运行
AI代码解释
复制
POST /oauth2/v4/token HTTP/1.1
Host: www.googleapis.com
Content-Type: application/x-www-form-urlencoded

code=4/P7q7W91a-oMsCeLvIaQm6bTrgtp7&
client_id=your_client_id&
client_secret=your_client_secret&
redirect_uri=https://oauth2.example.com/code&
grant_type=authorization_code

我提供了调用中使用的client_id和client_secret来获取serverAuthCode。我验证了我发送的serverAuthCode看起来是正确的,从"4/“开始。redirect_uri有点神秘。我尝试了我能想到的所有方法,包括与client_id相关的授权重定向URI,null,示例中的URI,以及来自web的许多奇怪的建议。无论如何,无论是从应用程序还是从SoapUI,我都会收到

代码语言:javascript
运行
AI代码解释
复制
{
 "error": "unsupported_grant_type",
 "error_description": "Invalid grant_type: "
}

This post似乎在说redirect_uri必须与调用中使用的匹配才能获得serverAuthCode。然而,这是由插件设置的,查看它的代码,我在任何地方都找不到它的设置。

所以我的问题是:谁能告诉我如何在安卓上获得access_token?如果上面的帖子是正确的,有没有办法找出插件使用的是什么redirect_uri?This issue提供了一个让插件直接返回access_token的方法,但也暗示谷歌不赞成使用serverAuthCode,所以从serverAuthCode获取access_code似乎是最好的选择。

(更新:上面的变通方法在我们的情况下也不起作用,所以我们似乎被困在了这一点上)

EN

回答 2

Stack Overflow用户

发布于 2017-10-21 00:12:27

经过几天的尝试,我们终于发现这篇文章的编码不正确。不用说,错误响应中的某种信息会很有帮助--特别是在这种情况下,因为在测试各种正文格式时,可以清楚地看到参数正在被识别,但是仍然会返回一个错误。

仍然不知道为什么在安卓系统上access_token突然停止返回,这使得这个调用是必要的。希望这能对其他人有所帮助!

票数 0
EN

Stack Overflow用户

发布于 2020-11-12 14:41:34

我也遇到过同样的问题,我发现在重新进行身份验证并获得新代码以再次尝试之后,ID令牌响应正常。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46739724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文