JSAPI トークンを REST Oauth トークンに交換しようとすると問題が発生します ( https://developer.linkedin.com/documents/exchange-jsapi-tokens-rest-api-oauth-tokens )
私はこのライブラリを使用しています - http://code.google.com/p/oauth-php/ - サーバーに拡張機能をインストールできないため、PECL 拡張機能とは対照的です。
同様の質問がたくさんあるようですが、実際に質問に答えるものはありません-上記のライブラリを使用してLinkedinで認証する方法。
私のコードは次のとおりです。
$cookie_name = "linkedin_oauth_" . $this->_c->linkedin_api_key;
$credentials_json = stripslashes($_COOKIE[$cookie_name]);
$credentials = json_decode($credentials_json);
// Get the Access Token + Secret
$access_token_url = 'https://api.linkedin.com/uas/oauth/accessToken';
OAuthStore::instance("2Leg", array(
'consumer_key' => $this->_c->linkedin_api_key,
'consumer_secret' => $this->_c->linkedin_api_secret
));
try {
$request = new OAuthRequester($access_token_url, 'POST', array(
'xoauth_oauth2_access_token' => $credentials->access_token
));
$result = $request->doRequest();
} catch(OAuthException2 $e) {
print_r($e->getMessage());
}
catch ステートメントの出力は次のとおりです。
Request failed with code 400: oauth_problem=parameter_absent&oauth_parameters_absent=oauth_verifier
この oauth_verifier を取得するにはどうすればよいですか? xoauth_oauth2_access_token を既に渡していた場合、それは必要ないというのが私の理解でしたか?
すべての変数 IE $credentials と $this->_c を確認しましたが、すべての変数が正しく通過しています。