hel*_*rld 5 openid picasa oauth gdata
我已成功使用OAuth1.0 + OpenID混合协议与Google进行身份验证,然后使用其服务.
但是,我面临特定用户帐户的错误.我目前的流程:
执行发现
重定向用户与OpenID和OAuth的参数提供者(如:https://accounts.google.com/o/openid2/auth?https://accounts.google.com/o/openid2/auth?openid.ns=http://specs.openid.net/auth/2.0&openid.claimed_id=http://specs.openid.net/auth/2.0/identifier_select&.....&openid.ns.ext2=http://specs.openid.net/extensions/oauth/1.0&openid.ext2.consumer=mywebsite.com&openid.ext2.scope=https://picasaweb.google.com/data+https://www-opensocial.googleusercontent.com/api/people/+http://www.google.com/m8/feeds/)
一旦用户成功验证并批准了权限请求,应用程序就会返回到我指定的callbackurl long,其字符串类似于上述请求,我从"openid.ext2.request_token"中提取授权令牌,然后通过传递获取访问令牌.
但是对于特定用户帐户,在成功进行身份验证和授予权限后,不是按照上述方式传递结果,而是重定向到某个URL https://accounts.google.com/o/openid2/approval?xsrfsign=AC9jObYAAAAATpF6x6S6Ac7MfHaZ,然后返回到我的应用程序,而不在查询字符串中包含任何参数.
相同的代码适用于其他帐户.我无法确定一个帐户的特殊功能(除了我上个月创建的).请注意,只有当我在范围内包含picasa时才会发生这种情况.如果我排除picasa,它就可以了.
请帮忙.
能够通过添加 request_token 请求来解决此问题。奇怪的是,对于大多数帐户来说,它无需提出此请求即可工作。但是,对于创建的新帐户,我必须在请求中明确设置此参数。一旦设置了此参数,我就获得了用户详细信息和请求令牌,而不是将用户重定向到 xsrfsign.. URL。
| 归档时间: |
|
| 查看次数: |
1052 次 |
| 最近记录: |