2011-06-04 3 views
0

J'ai mis en place une application Facebook avec des servlets Java. Je me demande comment je peux lire le jeton d'accès à partir de la requête HTTP envoyée par Facebook après authentification.Get Facebook access_token from URL

La demande qui m'a été envoyé par Facebook ressemble à ceci: http://myserver/app/servlet#access_token=3108888%7C2.AQByEGAdEk7D5hs3.3600.130400.1-10005014%7C3XTVE&expires_in=4317

Comment puis-je lire le jeton d'accès (qui est un fragment et non un paramètre) dans mon servlet Java? Si c'était un paramètre que je ferais:

request.getParameter("access_token); 
+0

Résolu! J'ai trouvé un moyen de faire en sorte que Facebook m'envoie la requête avec un vrai paramètre http au lieu d'un fragment. – Mirko

+0

Ce serait bien si vous décriviez la solution aussi. – biziclop

+0

J'ai le même problème. Comment l'avez-vous résolu? -Joni –

Répondre

0

Pour faire facebook envoyer la demande qui contient access_token dans les paramètres http, il faut modifier le paramètre resoponse_type à la demande. Il est de deux types code et token. Si nous passons token le access_code sera en url fragment et si nous passons token il sera paramètre de demande avec la clé comme code.

Voir: Constructing a URL to the OAuth Dialog

Pour la manipulation de access_code du côté serveur par exemple dans certaines servlets, il est nécessaire d'envoyer request_type comme code sinon il ne peut être manipulé que du côté client via javascript.