2015-07-15 3 views
0

Мне нужно показать обновления моей компании от Linkedin, поэтому я создал Linkedin APP. Мне нужно выполнить аутентификацию с помощью OAuth2 в Linkedin с моим приложением, а не с пользователем, который посещает мой сайт.Ошибка с завивкой получения Linkedin Acces Token

Я пытаюсь получить маркер доступа с завитком, но я всегда эту ошибку:

string(153) "{"error_description":"missing required parameters, includes an invalid parameter value, parameter more than once. : client_id","error":"invalid_request"}"

Мой код:

$code = isset($_REQUEST['code'])?$_REQUEST['code']:"";     

     $curl_request = curl_init(); 
     curl_setopt_array($curl_request, array(
      CURLOPT_RETURNTRANSFER => 1, 
      CURLOPT_URL => "https://www.linkedin.com/uas/oauth2/accessToken", 
      CURLOPT_POST => 1, 
      CURLOPT_HTTPHEADER => array('Content-Type: application/x-www-form-urlencoded'), 
      CURLOPT_POSTFIELDS => array(
       grant_type => "authorization_code", 
       code => $code, 
       redirect_uri => LINKEDIN_CALLBACK_URL, 
       client_id => LINKEDIN_API_KEY, 
       client_secret => LINKEDIN_API_SECRETE_KEY 
      ) 
     )); 

     $curl_result = curl_exec($curl_request); 

     var_dump($curl_result); 

ответ

0

реализация LinkedIn в OAuth 2.0 не поддерживает два - аутентифицированная аутентификация. Вам придется пройти аутентификацию с определенным участником - будь то активный пользователь или ваша собственная учетная запись, которую вы аутентифицируете один раз, а затем молча продолжать повторное использование этого токена доступа и обновлять его каждые 60 дней, чтобы предотвратить его истечение.

Таким образом, ваша ошибка связана с тем фактом, что вы неправильно сформулировали запрос на получение доступа к Token из LinkedIn, поскольку параметр client_id не распознается. Пройдите через документацию OAuth 2.0, чтобы убедиться, что вы правильно форматируете свои HTTP-запросы во время процесса аутентификации: https://developer.linkedin.com/docs/oauth2

Смежные вопросы