我尝试使用google登录我的网站。 用户可以访问我的网站3个域
1)常规链接(HTTP和WWW ......) 2)http://example.com - 没有www 3)apps.facebook.com/example - facebook app
我们希望允许用户在这三个选项中连接谷歌。
我们正在使用gapi(google javascript库)来验证用户身份。 我的代码如下:
var config = {
'client_id': 'my_client_id',
'scope': 'my_scopes',
**'redirect_uri' : "https://www.example.com/oauth/",**
'immediate': immediate
};
**gapi.auth.authorize(config, function(){});**
正如您所看到的,我将重定向uri设置为gapi配置的一部分。 我们创建了一些弹出窗口,以便为这三个域提供相同的uri。
我的问题是,如果我在没有WWW的情况下从域登录我的网站,则授权不起作用且用户不会重定向到redirect_uri链接 - 这意味着,我们没有他的令牌。
如果我在redirect_uri中删除了WWW(所以它看起来像https://example.com/oauth/) facebook域名没有工作......
很沮丧.. 有人熟悉这种问题吗? 有什么想法吗?
我们花了太多时间......
由于 ž
答案 0 :(得分:1)
您可以在Google API控制台中为单个客户注册多个重定向URI,这样您就可以为每个域注册一个,并在授权请求的redirect_uri
参数中为当前访问的域传递一个。您不需要在域中使用相同的重定向URI,以便解决状态/令牌恢复问题。