1

J'essaie d'implémenter facebook SSO sur mon application Android. Une fois que l'utilisateur se connecte à l'application à l'aide de Facebook, il appelle mon service Web sur Google App Engine (GAE). Actuellement, je suis en mesure d'obtenir le access_token de facebook sur mon application android. Ensuite, j'ajoute access_token en tant que cookie à ma demande http GAE. Mais je ne suis pas sûr comment je pourrais authentifier la demande de l'utilisateur en utilisant le cookie, sur GAE. Actuellement, je suis en train: -OAuth: Authentifier l'utilisateur Android sur google app engine en utilisant Facebook SSO

User user = OAuthServiceFactory.getOAuthService().getCurrentUser(); 
String email = user.getEmail(); 

Mais mon service web GAE est de lancer cette exception: -

org.restlet.resource.UniformResource doCatch: Exception or error caught in resource 
com.google.appengine.api.oauth.InvalidOAuthParametersException 

Est-ce la bonne façon d'authentifier l'utilisateur? Si oui, alors qu'est-ce qui me manque ici qui cause cette exception.

Merci pour l'aide !!

Répondre

1

Cela échoue parce que vous n'utilisez pas OAuth. Vous prenez un jeton d'authentification de connexion Facebook - qui n'utilise pas non plus OAuth - et vous le joignez à une demande que vous apportez à votre application App Engine.

Si vous souhaitez utiliser OAuth avec votre application, vous devez vous authentifier auprès de votre application App Engine. Si vous souhaitez réutiliser vos informations d'identification Facebook, vous devrez utiliser l'API fournie par Facebook pour vérifier les jetons d'authentification (s'il y en a un), et non l'API OAuth.

+0

Merci Nick! En fait, j'utilise Facebook SSO en suivant les instructions mentionnées ici: https://developers.facebook.com/docs/mobile/android/build/. Et selon le post de blog facebook suivant, SSO utilise OAuth: http://developers.facebook.com/blog/post/640/. Est-ce que j'ai râté quelque chose ? – mabicha

Questions connexes