【发布时间】:2013-06-27 10:15:45
【问题描述】:
我现在正在尝试使用 google oauth api 来允许 google 用户登录到我的应用程序。我一直在关注 google 的 OAuth2Login 文档。
我用它来获取代码,它工作得很好。
var u = 'https://accounts.google.com/o/oauth2/auth?'
+ '&response_type=code'
+ '&client_id=' + opts.googleClient
+ '&redirect_uri=' + redirectURI
+ '&scope=' + opts.scope
+ '&approval_prompt=force&access_type=offline';
但是当我尝试使用/o/oauth2/token api 获取 access_token 时,如下所示:
var u = 'https://accounts.google.com/o/oauth2/token?'
+ 'code=' + code
+ '&client_id=' + opts.googleClient
+ '&client_secret=' + opts.googleSecret
+ '&scope='
+ '&redirect_uri=' + redirectURI
+ '&grant_type=' + 'authorization_code';
request.post({url: u, json: true}, fn);
它还给我
{
error: "invalid_request"
}
我已经使用网络栏中的 Chrome 开发人员工具进行了检查,表明请求 URL 是 https://accounts.google.com/o/oauth2/approval?as=-5013c18c497345fc&hl=en&pageId=none&xsrfsign=APsBz4gAAAAAUcwS1TxlojrAPVNCj7ntTlz1H4xQgysC,而不是我发布的内容。
我可以确保我的帖子网址和数据与Google oauthplayground 中的完全一样。但结果完全不同。
我做错了什么吗?请帮忙。
【问题讨论】:
标签: google-oauth oauth2-playground