2017-07-15 18 views
7

私はLinkedIn APIを使用してそこから更新を取得し、ウェブサイトに表示します。 OAuthを使用している間、私はトークンをファイルに保存してから、ログインポップアップを防ぐために再度そこから引き出します。しかし、トークンが期限切れになったら、どのようにリフレッシュされるのかはわかりません。認証のためにLinkedIn API OAuthリフレッシュトークン

 $config = json_decode(file_get_contents(".service.dat")); 
     if(isset($config->key) && isset($config->secret)) { 
      $this->access_token = new OAuthConsumer($config->key, $config->secret); 
     } 

は、私がリクエストトークン取得するには、次のしている - - 私は、ファイルからトークンを読んでいますどのようにされて、次のトークンを生成した後

function getRequestToken() 
{ 
    $consumer = $this->consumer; 
    $request = OAuthRequest::from_consumer_and_token($consumer, NULL, "GET", $this->request_token_path); 
    $request->set_parameter("oauth_callback", $this->oauth_callback); 
    $request->sign_request($this->signature_method, $consumer, NULL); 
    $headers = Array(); 
    $url = $request->to_url(); 
    $response = $this->httpRequest($url, $headers, "GET"); 
    parse_str($response, $response_params); 
    $this->request_token = new OAuthConsumer($response_params['oauth_token'], $response_params['oauth_token_secret'], 1); 
} 

を、私は認可genertingていますURL:

function generateAuthorizeUrl() 
{ 
    $consumer = $this->consumer; 
    $request_token = $this->request_token; 
    return $this->authorize_path . "?oauth_token=" . $request_token->key; 
} 

リンク先のドキュメントでは、更新トークンについて次のように記載されています。

アクセストークンの更新は非常に簡単で、ユーザーに対して 承認ダイアログが表示されない場合に発生する可能性があります。つまり、 シームレスプロセスであり、アプリケーションのユーザー に影響しません。追加の60時間の 寿命を持つ新しいアクセストークンを取得するには、アプリケーションに承認 のフローを通過させるだけです。

私はその意味を明確にしていません。リクエストトークンを取得してからやり直す必要がある場合は、httpリクエストをもう一度行い、ログイン画面をポップアップする必要はありませんか?どうすればそれを避けることができますか?提案を感謝します。

ありがとうございました。

答えて

関連する問題