リンクインから追加のアクセス許可を要求しようとすると、基本的なアクセス許可を除いて、ダイアログにアクセス許可のリストが表示されません。解決策を教えてください。アクセス許可を urlencoding してみましたが、まだ応答がありません。これが私のコードです:「Linkedinでサインアップ」ボタンをクリックしてこの関数を呼び出しています。
public function linkedinaccessAction()
{
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender();
$scope = 'r_basicprofile+r_emailaddress+r_network+r_contactinfo';
$options = array(
'version' => '1.0',
'siteUrl' => 'http://localhost/project/development/',
'callbackUrl' => 'http://localhost/project/development/signup/linkedinaccess',
'requestTokenUrl' => 'https://api.linkedin.com/uas/oauth/requestToken?scope=' . $scope,
'userAuthorizationUrl' => 'https://api.linkedin.com/uas/oauth/authorize',
'accessTokenUrl' => 'https://api.linkedin.com/uas/oauth/accessToken',
'consumerKey' => 'myconsumerkey',
'consumerSecret' => 'myconsumersecret'
);
$consumer = new Zend_Oauth_Consumer( $options );
if (!isset($_SESSION ['LINKEDIN_ACCESS_TOKEN'])){
if(! empty ( $_GET )){
//consumer = new Zend_Oauth_Consumer( $options );
$accessToken = $consumer->getAccessToken ( $_GET, unserialize ( $_SESSION ['LINKEDIN_REQUEST_TOKEN'] ) );
echo $accessToken;
$_SESSION ['LINKEDIN_ACCESS_TOKEN'] = serialize ( $accessToken );
}else{
$requestToken = $consumer->getRequestToken();
$_SESSION ['LINKEDIN_REQUEST_TOKEN'] = serialize ( $requestToken );
$consumer->redirect();
}
}else{
$accessToken = unserialize ( $_SESSION ['LINKEDIN_ACCESS_TOKEN'] );
// Use HTTP Client with built-in OAuth request handling
$client = $accessToken->getHttpClient($options);
// Set LinkedIn URI
$client->setUri('https://api.linkedin.com/v1/people/~');
// Set Method (GET, POST or PUT)
$client->setMethod(Zend_Http_Client::GET);
// Get Request Response
$response = $client->request();
// Get the XML containing User's Profile
$content = $response->getBody();
print_r($content);
}
}
ありがとうございました。