Qu'est-ce que j'essaie d'accomplir:
Jusqu'à présent, j'ai pu authentifier avec LinkedIn, récupérer un jeton d'accès et utiliser le service de LinkedIn pour obtenir leur ID utilisateur. P>
Le flux ressemble un peu à ceci En retour dans mon application, j'attrape les données de l'intention à l'aide du code ci-dessous p> Cette partie semble être fonctionnelle et donne un Post Success Je suis capable d'utiliser l'accès fourni jeton avec l'apihelper fourni fourni fort> pour obtenir le profil de base de l'utilisateur p> Ceci retourne réellement avec les informations de profil utilisateur de base. p> {
"errorCode": 0,
"message": "Unable to verify access token",
"requestId": "M9J2NBQV9J",
"status": 401,
"timestamp": 1430922872474
}
3 Réponses :
Comme indiqué dans la documentation d'authentification de SDK Android de LinkedIn ( https://developer.linkedin.com / Docs / Android-SDK-Auth ), P>
Jetons d'accès côté serveur mobiles contre serveur p>
Il est important de noter que les jetons d'accès acquis via le SDK mobile ne sont utilisables que avec le SDK mobile et ne peuvent pas être utilisés pour effectuer des appels d'API de repos au côté serveur. P>
De même, les jetons d'accès que vous avez déjà stockés à partir de vos utilisateurs qui authentifient à l'aide d'un appel d'API de repos de serveur ne fonctionneront pas avec le SDK mobile. P> blockQuote>
Merci pour la réponse rapide, Justin! Aurait dû attraper ça. Appréciez l'aide.
LISessionManager sessionManager = LISessionManager.getInstance(getApplicationContext()); LISession session = sessionManager.getSession(); boolean accessTokenValid = session.isValid(); String respon =""; if(accessTokenValid) { String url = "https://api.linkedin.com/v1/people/~?format=json"; //String url = "https://api.linkedin.com/v1/people/~:(id,first-name,last-name,picture-url)"; APIHelper apiHelper = APIHelper.getInstance(getApplicationContext()); apiHelper.getRequest("your activity", url, new ApiListener() { @Override public void onApiSuccess(ApiResponse apiResponse) { respon = apiResponse.toString(); Log.e("Response ", respon); } @Override public void onApiError(LIApiError LIApiError) { Log.e("error", LIApiError.toString()); } }); }
tandis que LinkedIn indique qu'il n'est pas possible d'utiliser un jeton d'accès fourni par le SDK mobile pour créer des appels d'API côté serveur, j'ai pu effectuer des appels simplement en ajoutant x-li-src: msdk < / code> dans l'en-tête de la demande. P>