Nous avons construit une application web à partir d'une base de données existante, et permi aux utilisateurs de s'inscrire et de se connecter.
Désormais, notre objectif sera de permettre aux utilisateurs d'interroger une API REST, c'est à dire d'obtenir les informations sur nos séries en JSON.
Le premier problème est l'authentification.
Au moment de l'inscription d'un utilisateur, générez un jeton (user_id
) aléatoire qui permettra
par la suite de l'identifier.
Dans le principe, une API REST est sans état. Cela signifie qu'il n'y a pas de session avec le serveur. Autrement dit, il n'est pas possible de s'identifier de manière classique.
Une solution à ce problème est de demander aux personnes qui souhaitent interroger l'API de fournir un jeton dans chaque requête au lieu de s'identifier par session.
Voici un exemple de requête:
http://localhost:8000/hello?api_token=[token]
Ici, [token]
serait la valeur stockée dans le user_id
et permettrait alors de l'identifier. La page
hello pourrait simplement afficher "Hello [name]"
où [name]
serait le nom de l'utilisateur
Pour ce faire, lisez la documentation officielle de Symfony sur le sujet.