1

Web サイトのユーザーが Yahoo/Gmail アカウントを使用してログインできるようにしようとしています。
Gmail は問題なく動作しました。しかし、Yahooには次のphpスニペットがあります:

$this->options = array('consumer_key' => 'Yahoo からの私のキー',
    'consumer_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 = 配列(
    'xoauth_lang_pref' => 'en-us',
    'oauth_callback' => $this->callback_url);//私のページへのコールバック
$tokenResultParams = OAuthRequester::requestRequestToken($this->options['consumer_key'], 0, $getAuthTokenParams);

今Yahooは与える

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 OUR DELi SAMi OTRi UNRi PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE LOC GOV"
WWW 認証: OAuth oauth_problem=signature_invalid
接続: 閉じる
Transfer-Encoding: チャンク
コンテンツ タイプ: application/x-www-form-urlencoded

oauth_problem=signature_invalid

https://developer.apps.yahoo.com/projectsで選択したもの:

おいしいソーシャルブックマーク (読み取り/書き込み)
連絡先 (読み取り)
ソーシャル ディレクトリ (読み取り/書き込み)

誰かが同じ問題に直面しましたか?私は何か悪いことをしましたか?
ご協力いただきありがとうございます

4

1 に答える 1

1

昨日見つけたように、yahooのトークンは巨大です。つまり、oauth-php はそれを適切に保存しないため、悪い署名が得られます。問題に対する私の解決策は次のとおりです。oauth-php ライブラリを使用した API?

于 2011-07-28T13:26:39.530 に答える