Un token d’accès est généré à la fin du processus de connexion. Ce token d’accès est joint à tout appel d’API pour prouver que l’appel a été effectué par un utilisateur ou une utilisatrice donné·e à partir d’une application spécifique.
Le kit Facebook SDK for JavaScript gère automatiquement le stockage des tokens d’accès et le suivi de l’état de la connexion dans le navigateur. Aucune intervention n’est donc requise de votre part pour stocker les tokens d’accès dans le navigateur.
Toutefois, il est fréquent de récupérer le token d’accès et de le transférer vers un serveur qui va effectuer les appels au nom de la personne. Pour récupérer le token à partir du navigateur, vous pouvez utiliser l’objet response
renvoyé via FB.getLoginStatus()
:
FB.getLoginStatus(function(response) { if (response.status === 'connected') { console.log(response.authResponse.accessToken); } });
Le token est une chaîne opaque de longueur variable.
Gardez également à l’esprit que les tokens d’accès générés dans les navigateurs ont généralement une durée de vie de quelques heures seulement et sont automatiquement actualisés par le SDK JavaScript. Si vous effectuez des appels depuis un serveur, vous devez générer un token de longue durée, décrit en détail dans notre documentation sur les tokens d’accès.
Normalement, les applications doivent confirmer que la réponse de la boîte de dialogue Login est générée par la personne qui a lancé le processus. Si vous utilisez le SDK JavaScript de Facebook, celui-ci effectue automatiquement ces vérifications. Aucune intervention de votre part n’est donc requise, dans la mesure où vous effectuez des appels uniquement depuis le navigateur.
Si vous décidez de renvoyer le token d’accès au serveur, vous devez vous assurer de le vérifier une seconde fois lorsqu’il parvient au serveur. Pour vérifier une seconde fois le token, consultez notre documentation sur la manière de créer manuellement un processus de connexion. Vous devrez vérifier que les valeurs app_id
et user_id
correspondent à ce que vous attendez du point de terminaison de débogage du token d’accès.
À ce stade du processus, l’utilisateur·ice s’est authentifié·e et connecté·e. Votre application est maintenant prête à effectuer des appels d’API en son nom depuis le navigateur. Dans le navigateur, l’appel FB.api()
est le moyen le plus facile d’effectuer des appels. FB.api()
ajoute automatiquement le token d’accès à l’appel.
Le code suivant :
FB.api('/me', function(response) { console.log(JSON.stringify(response)); });
renvoie un tableau avec l’ID et le nom :
{ "id":"101540562372987329832845483", "name":"Bob Smith" }
Si vous effectuez des appels côté serveur avec le token d’accès, vous pouvez utiliser un SDK sur le serveur pour effectuer des appels similaires. De nombreuses personnes utilisent le langage PHP pour créer des applications web. Notre documentation sur le SDK PHP contient des exemples d’appels d’API côté serveur.
Les utilisateur·ices peuvent désinstaller une application sur Facebook.com sans avoir à interagir avec l’application en question. Pour aider les applications à détecter de telles désinstallations, nous les autorisons à fournir une URL de rappel d’annulation d’autorisation qui sera exécutée pour chaque action de désinstallation.
Vous pouvez activer un rappel d’annulation d’autorisation dans Espace App.