在尝试获取访问令牌googleapi时出现Invalid_grant错误



我遵循这里的步骤。我有authorization code在浏览器中,但得到一个:

**访问错误:协议错误:"Server error: HTTP/1.0 400 Bad Request"

,当我生成我的请求,试图获得我的令牌。我将目标更改为http,这样我就可以在wireshark中跟踪http请求,并且我得到了添加换行的结果:

POST /oauth2/v3/token HTTP/1.0
Accept: */*
Accept-Charset: utf-8
Host: www.googleapis.com
User-Agent: REBOL
Content-Type: application/x-www-form-urlencoded
Content-Length: 251
code=url-encoded-my-authorisation-code&
client_id=my-client-id.apps.googleusercontent.com&
client_secret=my-client-secret&
redirect_uri=urn-blah-blah&
grant_type=authorization_code

对我来说很好。

当我使用http代替,我得到这个消息

{"error":"internal_failure","error_description":"SSL is required to perform this operation."}

但不幸的是,它没有告诉我我的请求是否关闭,以帮助我处理SSL请求。

PS:我又进步了。我从redirect_uri中删除了URL编码,现在我得到了invalid_grant错误。在此之前,它抱怨redirect_uri缺少一个方案。

有一次我确实成功地获得了一个访问令牌,但我无法复制这个。我看到我的应用列在我授予的访问令牌中。我删除了我的应用程序,并试图再次授予,但仍然失败。

我的时钟是正确的,所以这不是问题。oauth2操场工作良好,据我所知,我正在做同样的,但没有成功。

我的是一个安装的应用程序,所以我不能提供我的凭据到操场作为一种方式来信任他们的redirect_uri没有提供,我得到一个错误。

似乎对refresh_tokens有限制,虽然从有权访问我的日历的应用程序中删除应用程序不起作用,但从https://console.developers.google.com/中删除我的项目并重新创建它们工作。然后我的代码成功运行,没有任何更改。

尝试更改url以获取有关Google使用https://www.googleapis.com/oauth2/v3/tokeninfo?access_token={accessToken}令牌的信息

小心版本api

相关内容

  • 没有找到相关文章

最新更新