Snippet pour tout ceux qui galèrent à intégrer l’OAuth de LinkedIn
Avec CakePHP v3, il est possible d’utiliser le client Http. Si vous ne voulez pas galèrer comme moi à comprendre pourquoi ce message d’erreur s’affiche à chaque fois que le callback est exécuté :
error_description »: »missing required parameters, includes an invalid parameter value, parameter more than once. : client_id
Il suffit « tout simplement » de construire le tableau POST avec la fonction « http_build_query », de cette façon :
$http = new Client(); $response = $http->post('https://www.linkedin.com/uas/oauth2/accessToken', http_build_query([ 'client_id' => 'xxxxxx', 'client_secret' => 'yyyyyy', 'grant_type' => 'authorization_code', 'code' => $this->request->query['code'], 'redirect_uri' => 'zzzzzz', ]), ['headers' => ['Content-Type: application/x-www-form-urlencoded']]);
Ce snippet n’est qu’un tout petit bout du long processus d’authentification de LinkedIn, Je ferai un tutoriel sur la façon d’utiliser l’API de LinkedIn dans une application CakePHP v3 d’ici quelques jours.