雅虎返回“;签名“无效”;当我使用OAuth时

雅虎返回“;签名“无效”;当我使用OAuth时,oauth,yahoo-oauth,Oauth,Yahoo Oauth,我正在尝试允许我的网站用户使用他们的Yahoo/Gmail帐户登录。 Gmail进展顺利。但在雅虎,我有以下php代码片段: $this->options = array('consumer_key' => 'My Key from Yahoo', 'consumer_secret' => 'My Secret ', 'server_uri' => 'https://www.yahoo.com', 'request_token_uri'=> 'https://api

我正在尝试允许我的网站用户使用他们的Yahoo/Gmail帐户登录。
Gmail进展顺利。但在雅虎,我有以下php代码片段:

$this->options = array('consumer_key' => 'My Key from Yahoo', 'consumer_secret' => 'My Secret ', 'server_uri' => 'https://www.yahoo.com', 'request_token_uri'=> 'https://api.login.yahoo.com/oauth/v2/get_request_token', 'authorize_uri' => 'https://api.login.yahoo.com/oauth/v2/request_auth', 'access_token_uri'=> 'https://api.login.yahoo.com/oauth/v2/get_token',); $getAuthTokenParams = array( 'xoauth_lang_pref' => 'en-us', 'oauth_callback' => $this->callback_url);//callback to my page $tokenResultParams = OAuthRequester::requestRequestToken($this->options['consumer_key'], 0, $getAuthTokenParams); $this->options=array('consumer_key'=>“我的雅虎密钥”, “消费者秘密”=>“我的秘密”, '服务器uri'=>'https://www.yahoo.com', '请求\u令牌\u uri'=>'https://api.login.yahoo.com/oauth/v2/get_request_token', '授权uri'=>'https://api.login.yahoo.com/oauth/v2/request_auth', '访问\u令牌\u uri'=>'https://api.login.yahoo.com/oauth/v2/get_token',); $getAuthTokenParams=数组( “xoauth_lang_pref”=>“en us”, 'oauth_callback'=>$this->callback_url)//回拨到我的页面 $tokenResultParams=OAuthRequester::requestRequestToken($this->options['consumer_key'],0,$getAuthTokenParams); 现在雅虎给出

HTTP/1.1 401 Forbidden Date: Wed, 27 Jul 2011 09:12:19 GMT P3P: policyref="http://info.yahoo.com/w3c/p3p.xml", CP="CAO DSP COR CUR ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE LOC GOV" WWW-Authenticate: OAuth oauth_problem=signature_invalid Connection: close Transfer-Encoding: chunked Content-Type: application/x-www-form-urlencoded oauth_problem=signature_invalid HTTP/1.1 401禁止 日期:2011年7月27日星期三09:12:19 GMT P3P:policyref=”http://info.yahoo.com/w3c/p3p.xml,CP=“CAO DSP COR CUR ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi我们的产品在联合财务公司资产净值中的位置 WWW认证:OAuth OAuth\u问题=签名\u无效 连接:关闭 传输编码:分块 内容类型:application/x-www-form-urlencoded oauth\u问题=签名\u无效 在本报告中,我选择了:

delicious social bookmarking (read/write) Contacts (read) Social Directory (read/write) 美味的社交书签(读/写) 联系人(已读) 社交目录(读/写) 有人遇到过同样的问题吗?我做错什么了吗?

谢谢你的帮助

正如我昨天发现的那样,雅虎的代币是巨大的。这意味着oauth php不能很好地存储它,所以您会得到错误的签名。以下是我对这个问题的解决方案:

正如我昨天发现的,雅虎的代币是巨大的。这意味着oauth php不能很好地存储它,所以您会得到错误的签名。以下是我对这个问题的解决方案:

请注意,如果您更改所请求的权限(联系人、社交目录等),Yahoo将更改您的客户id和密码。因此,如果在进行更改之前复制了这些值,则该操作将不起作用。请确保您使用的是最新的值。请注意,如果您更改所请求的权限(联系人、社交目录等),Yahoo将更改您的客户端id和密码。因此,如果在进行更改之前复制了这些值,则该操作将不起作用。确保使用的是最新的值。