我已经成功使用OAuth1.0 + OpenID混合协议进行谷歌身份验证,之后使用其服务。谷歌混合协议认证问题
但是,我正面临特定用户帐户的错误。 我的电流流动:
执行发现
重定向用户提供商通过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,则可以使用。
请帮忙。