REST REST

Une manière de concevoir les API web où chaque élément possède sa propre adresse et où l'on agit dessus avec les mêmes quelques actions standard.

Également appelé API REST API RESTful service web REST

Définition

REST est un style de construction d'API, et une API est la façon dont un programme demande une information à un autre. La règle de REST est courte. Chaque élément que le système garde reçoit sa propre adresse web, et on agit sur cette adresse avec les mêmes quelques actions standard que le web utilise déjà.

Imaginez la liste des patients d'un cabinet. Une adresse désigne tous les patients. La même adresse avec un numéro au bout désigne un patient précis. Pour lire ce patient, le programme envoie une demande de lecture. Pour en ajouter un, une demande de création. Pour remplacer la fiche, une demande de remplacement. Pour la supprimer, une demande de suppression. Ces quatre verbes n'ont pas été inventés par le logiciel du cabinet. Ce sont les instructions ordinaires que tout navigateur envoie déjà.

Le gain, c'est que tout devient devinable. Un développeur qui a utilisé une API REST comprend en général la suivante sans manuel. Cela vous fait gagner de l'argent. Le raccordement d'un nouveau fournisseur prend moins de temps, et la personne qui reprendra votre système dans trois ans n'aura pas à apprendre un langage privé inventé par quelqu'un. C'est pour cette seule raison que la plupart des applications web que Linkysoft construit parlent REST.

REST a un point faible que l'on découvre souvent tard. Chaque adresse renvoie un seul type de chose, donc un écran qui montre un patient, ses dix dernières visites et ses factures impayées peut exiger trois ou quatre requêtes distinctes. Sur la connexion du bureau, personne ne le remarque. Sur un téléphone avec une seule barre, c'est la différence entre un écran qui s'ouvre et un écran qui abandonne. Quand nous construisons une application mobile, nous ajoutons en général une adresse supplémentaire qui renvoie tout l'écran en une seule réponse, et nous gardons les adresses simples pour le reste.

Un dernier point avant de commander quoi que ce soit. REST ne dit rien sur qui a le droit de demander. Chaque adresse est une porte, et chaque porte doit vérifier elle-même l'identité et les droits de celui qui frappe. Oublier ce contrôle sur une seule adresse est l'une des causes les plus fréquentes de fuite de données, et c'est pourquoi une revue de sécurité Linkysoft lit la liste des adresses ligne par ligne. Si vous payez pour une API, demandez cette liste et demandez qui l'a testée.

Questions sur REST

Que veut dire REST ?
Representational State Transfer. Le nom complet n'aide personne. Dans la pratique, cela veut dire que chaque élément a sa propre adresse web et qu'on agit dessus avec des actions standard.
REST et API, est-ce la même chose ?
Non. REST est un style de construction d'API, de loin le plus répandu. Il en existe d'autres, comme GraphQL et SOAP, et un même système peut en proposer plusieurs à la fois.
Pourquoi les développeurs préfèrent-ils REST ?
Parce qu'il est prévisible. Celui qui a utilisé une API REST devine en général la suivante, ce qui réduit le temps et le coût de chaque nouveau raccordement que vous payez.
Une API REST est-elle sûre par défaut ?
Non. REST ne dit rien des permissions. Chaque adresse doit vérifier elle-même qui demande et ce qu'il peut voir, et chacune doit être testée séparément.
Une API REST peut-elle être lente sur mobile ?
Oui. Un écran qui a besoin de quatre adresses fait quatre allers-retours. Avec un signal faible, cela s'additionne, donc les écrans chargés reçoivent souvent une adresse combinée à eux.

Vous ne voyez toujours pas comment cela s'applique à votre projet ?

Dites-nous ce que vous construisez et nous vous répondrons simplement.