如何从java中重定向Uri获取访问令牌?

时间:2015-06-29 23:18:26

标签: gmail-api

我尝试使用gmail api进行学习。我创建了gmail登录。在允许我重定向新网页之后。地址是http://localhost:8080/Zon/Confirm?code=4/v4-CqVXkhiTkn9uapv6V0iqUmelHNnbLRr1EbErzkQw#

那么如何从这个地址获取访问令牌?

2 个答案:

答案 0 :(得分:1)

您无法使用localhost进行重定向。想一想,Google服务器如何知道您的地址,以便向您发送身份验证令牌?

重定向Uri必须可公开访问,以便Google OAuth服务可以在身份验证后将用户重定向到重定向网址。您无法使用localhost完成OAuth循环。

尝试使用公开托管网站的API。

答案 1 :(得分:0)

您在查询参数code中看到的值是您必须发布到Google才能获取访问令牌的字符串。

  

Web服务器收到授权代码后,可以进行交换   访问令牌和刷新令牌的授权码。这个   request是对URL的HTTPS POST   https://www.googleapis.com/oauth2/v3/token

POST /oauth2/v3/token HTTP/1.1
content-type: application/x-www-form-urlencoded

code=4/v4-CqVXkhiTkn9uapv6V0iqUmelHNnbLRr1EbErzkQw#&redirect_uri=<redirect_uri>&client_id=<client_id>&scope=&client_secret=************&grant_type=authorization_code

https://developers.google.com/identity/protocols/OAuth2WebServer