使用内部返回网址的Google OpenID + Oauth混合模式登录 - OAuth不起作用

时间:2011-08-15 22:40:11

标签: oauth openid

我正在努力让Google OpenID/OAuth hybrid登录工作。问题是它是一个可安装的网络(所以没有固定的域),我也试图让它在我的开发机器上工作 - 所以返回URL就像http://localhost:8000/test/index.php

我已经使用了code from their demo,但是当OpenID返回时,OAuth部分被Google完全忽略了(所以我得到了You are not authenticated)。我怀疑是因为OpenID params与消费者密钥不匹配,但我对如何使其工作感到茫然。我试图使用匿名/匿名作为OAuth键,它不会产生所需的效果。有什么想法可以让它在我的设置中以混合模式工作?

1 个答案:

答案 0 :(得分:1)

我们的API连接详细信息位于配置中,例如clientId,emailAddress,redirectUris存储在XML文件中。我们有几个配置集,例如一个用于开发,一个用于产品。每个环境都知道要使用哪个。我们正在使用Grails,所以当grails启动时,它会选择dev上下文,我们使用dev配置。

现在让redirectUri指向localhost,这样您就可以在本地计算机上工作,登录Google API控制台(https://code.google.com/apis/console/),添加另一个“客户端ID” Web应用程序“并将重定向URI设置为您的localhost。现在你应该有两个客户端ID,一个用于dev,一个用于prod。将这些设置保存在仅开发配置文件中,您就可以开始使用了。