Google Buzz& OAuth - 重定向问题

时间:2010-08-03 00:28:00

标签: php oauth redirect google-buzz

希望这不会太复杂。 :)事情是......

我正在尝试使用OAuth作为身份验证机制将我的PHP代码发布到Google Buzz。我正在做典型的“OAuth舞蹈”(获取请求令牌,授权它,交换访问令牌),但我遇到了一些似乎在谷歌方面的问题。希望我错了 - 修复会容易得多。 :)

为了达到目的 - oauth_callback参数似乎没有传递给授权表单。我重定向到的授权URI就像:

https://www.google.com/buzz/api/auth/OAuthAuthorizeToken
?domain=<my.domain>
&scope=<urlencode(https://www.googleapis.com/auth/buzz)>
&oauth_token=<request_token>
&oauth_callback=<my.domain/callback>

重定向时,会要求客户授权网站读取/写入Buzz。如果被接受,Google会再次(但以不同的形式)要求允许访问..在第二次允许后,会显示成功消息,但它不会向我的网站返回任何令牌,也不会重定向到oauth_callback uri。

我找到的解决方法是手动添加表单字段'oauth_callback ='通过firebug / chrome检查器,然后,在这两个确认后,它重定向到我的站点,我可以从响应中提取授权令牌,并将其交换为访问令牌。如果我使用'标准'Google授权终端,我会被正确重定向(仅限一个确认),但之后我获得的访问令牌对于Buzz无效。

那么,我错了还是谷歌?! :D我已经实施了OAuth与其他一些服务(Facebook,MySpace ......)的合作,但我从未遇到过这么多麻烦。

1 个答案:

答案 0 :(得分:0)

好吧,当我第二天早上遇到问题时,(部分)新鲜的眼睛,解决方案非常简单(但仍未记录).. :)以防任何其他人需要回答 - 在请求请求令牌时应指定oauth_callback参数