Découvrir ASP.NET Core 1.0

Découvrir l'API RESTful

Testez gratuitement nos 1330 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Les API web (Application Programming Interface, interface de programmation applicative) suivent des règles précises. Appréhendez leur utilité, leurs règles de conception ainsi que le fonctionnement de OAuth2.
03:53

Transcription

On entend beaucoup parler d'API web ou API restful. Nous allons voir à quels problèmes cela répond et comment concevoir une API conforme aux bonnes pratiques. Aujourd'hui, le nombre d'objets connectés ne cesse de croître. Ces objets communiquent en HTTP mais ne consomment difficilement du HTML, CSS ou Javascript. Une application web destinée à ces terminaux doit proposer des données brutes sous le format le plus standard possibile. C'est pour cela qu'elle doit proposer ces données sous la forme de ressources web, la plupart du temps en format JSON, ce qui ébauche les caractéristiques d'une API RESTful. Le terme de ressource est important. Il doit guider la conception de l'API. Maintenant, qu'est-ce que cela change pour notre application ? Il faut répondre à des requêtes HTTP, sur plus de verbes, get, post, put, patch et delete. Et il faut répondre en JSON ou en XML. On renforce donc le contrôleur et les modèles, et la vue perd de son importance. Les API RESTful, bien que stateless, ce qui signifie ici sans contexte et donc sans session, exploitent intensément les spécifications du protocole HTTP. En effet, la requête à une ressource REST utilise les verbes HTTP suivants : Post, pour la création. Get, pour la consultation. Put ou patch, pour la modification. Et delete, pour la destruction de la ressource. À ces requêtes, l'API répond avec des codes de retour HTTP standard. À créer, il répond 201. Si l'objet a été créé avec succès. Ou un code 400-et-quelque sinon. Par exemple, 400 si un des paramètres est non-valide. 403 si l'opération demande des autorisations. Etcétéra. Pour les trois autres opérations, c'est le code 200, qui signifie que le traitement a réussi. Et par exemple 404 si l'objet qui devait être traité est introuvable. Une API peut même aller plus loin sur la consultation des ressources. Elle peut permettre de spécifier les champs à retourner, ici Id, nom et adresse. Elle peut proposer un système de filtres. Ici par nom et code postal. Ou trier le résultat selon un certain champ, comme ici par note croissante ou décroissante ici, et par nom. Enfin, lorsque le volume de données est trop important, il est d'usage de limiter les résultats sous forme de pages. Le serveur informe alors, dans l'en-tête de réponse, le nombre total d'éléments, ici 90, et le nombre maximal par page, ici 50. Enfin, lorsque les données sont sensibles, ou qu'il faut l'approbation d'un tiers, il est possible de mettre en place une authentification OAuth2. Un fournisseur OAuth2, tel que Facebook, Nmais rien ne nous empêche de l'être également avec nos utilisateurs, désire maitriser l'accès qui est fait à ses ressources par les applications. L'utilisateur de cette application, qui est aussi un utilisateur du fournisseur, se connecte sur l'application en voulant utiliser le compte qu'il possède chez le fournisseur. L'application redirige alors l'utilisateur chez le fournisseur, en spécifiant une clé d'application pour que l'utilisateur s'authentifie. La clé d'application délivrée par le fournisseur OAuth lui permet de révoquer les applications indélicates ou de monnayer l'accès à ses ressources. Une fois authentifié chez le fournisseur, l'utilisateur est redirigé sur l'application avec un code d'authentification. Et ce code d'authentification est utilisé ensuite par l'application pour obtenir un token ou un jeton, à durée de vie plus ou moins longue, pour que les accès aux ressources du fournisseur par l'application soient maitrisées. Nous n'irons pas jusqu'à proposer du OAuth2, bien sûr, dans l'API que nous allons construire. Mais nous disposons maintenant des informations nécessaires pour aborder sereinement toute nouvelle API RESTful.

Découvrir ASP.NET Core 1.0

Prenez en main ASP.NET Core 1.0. Développez ainsi des applications web multiplateformes en C#, déployables sur Windows, Linux, Mac ainsi qu'en containers Dockers.

1h32 (20 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
ASP.NET Core ASP.NET Core 1
Spécial abonnés
Date de parution :1 févr. 2017

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !