我正在尝试实现Google OpenID + OAuth混合协议,以识别我的用户并访问他们的Google日历数据。
样本请求如下所示:
https://www.google.com/accounts/o8/id
?openid.ns=http://specs.openid.net/auth/2.0
&openid.claimed_id=http://specs.openid.net/auth/2.0/identifier_select
&openid.identity=http://specs.openid.net/auth/2.0/identifier_select
&openid.return_to=http://www.example.com/checkauth
&openid.realm=http://www.example.com
&openid.assoc_handle=ABSmpf6DNMw
&openid.mode=checkid_setup
&openid.ns.oauth=http://specs.openid.net/extensions/oauth/1.0
&openid.oauth.consumer=www.example.com
&openid.oauth.scope=http://docs.google.com/feeds/+http://spreadsheets.google.com/feeds/
我正在使用openid4java。我试图按照这篇文章:库集成到Googles-oauth-openid-hybrid-in-java-web-app
但是在本地主机上测试我的应用程序时遇到了麻烦。
如您在上述样本请求中所看到的,三个属性必须相等:
openid.realm
openid.oauth.consumer
openid.return_to
我已经在Google上注册了一些域,并获得了用户密钥和机密。但是,当我想在本地主机上开发和调试应用程序时(即openid.return_to = http:// localhost:8080 /和openid.realm = http://*.mydomain.com和openid.oauth.consumer = www.mydomain .com)并提供我的密钥和机密,openid4java RealmVerifier拒绝此类身份验证请求。
我什至尝试提供完全有效的选项(我的注册域而不是本地主机)-它似乎起作用,但是重定向消失了(由于缺少技术,我不想/不能在该域中部署应用程序。 )。
您能否提出建议,如何在本地主机上开发此类应用程序?有什么技巧可以测试这种应用程序吗?
谢谢你的帮助!
尝试在开发箱的/ etc / hosts(在Linux上)中添加指向127.0.0.1的your-machine.your-domain.com,然后以http://your-machine.your-domain进入您的应用程序。 com
(注意:用您的计算机名称替换您的计算机,并用您在Google注册的域替换您的域)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句