我正在尝试实施 Google OAuth 2 以访问 Google API。我跟随this指南,使用服务器端场景。
我获取代码没有问题,服务器重定向到 localhost(这是目前重定向 URI 中允许的唯一服务器)。
为了实现这一目标,我去https://accounts.google.com/o/oauth2/auth?client_id=whatever.apps.googleusercontent.com&redirect_uri=http://localhost/&scope=https://www.google.com/m8/feeds/&response_type=code
page.
然后,我尝试使用curl
(如指南中所示)来测试 Google 的服务器是否使用访问令牌进行响应。然而,它似乎很难失败。我能得到的唯一回应是{"error":"invalid_client"}
。我确信我提供了 Google 希望我提供的所有内容 - 代码、客户端 ID、客户端密钥、重定向 URI(本地主机)以及grant_type=authorization_code
.
Whole curl
命令行是:
curl https://accounts.google.com/o/oauth2/token -d "code=<code>&client_id=whatever.apps.googleusercontent.com&client_secret=<won't tell!>&redirect_uri=http://localhost&grant_type=authorization_code"
我错过了什么吗?如何用代码交换访问令牌?
Did you urlencode
你的客户端密码和重定向网址?这对我行得通。
应该http%3A%2F%2Flocalhost
代替https://localhost
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)