HappyApi
API vs Web Service : on vous explique tout sur les différences ?

API ou service Web ?

Le World Wide Web est né en août 1991. Il ne ressemble alors en rien ce qu'il est aujourd'hui. Il est lent et assez nu, avec pratiquement aucun site Web en ligne. Si vous aviez votre propre site Web, vous étiez l'un des rares là-bas !

C'était un monde avant Google. Google commence à apparaître en 1998 et la plupart des gens utilisaient Yahoo! pour rechercher sur le Web.

A cette époque, nous avions des services de messagerie qui nous permettaient de parler à d'autres personnes via une machine  , même si nous nous sommes ensuite tournés vers des services de messagerie instantanée comme AIM et MSN. Finalement, des sites Web comme Myspace, puis Facebook, sont apparus. Ceux-ci nous ont permis de créer nos propres versions Internet de nous-mêmes et d'interagir avec d'autres personnes que nous n'aurions jamais rencontrées autrement.

Les médias sociaux ont changé à jamais la façon dont nous utilisons Internet. Cela montrait aux gens que nous pouvions communiquer les uns avec les autres via une machine à portée de main – et rapidement.

Il est devenu clair que les options étaient illimitées. Les sites Web pourraient remplacer ce que nous faisons dans la vraie vie si c'était plus rapide et plus facile.

 

 

 

API et services Web

 

Source : https://testautomationresources.com/

Un service Web et une  API sont deux concepts similaires, il peut donc être difficile de comprendre les similitudes et les différences.

Terminologie Définition

Avant de commencer à expliquer plus en détail les services Web et les API, nous allons d'abord définir quelques termes :

  • XML [e X tensible M arkup L angue]est un format standardisé pour le stockage et l' envoi de données. Semblable au HTML, XML stocke les données en les enveloppant dans des balises descriptives.

  • JSON [ J ava S cript O bjet N ottaison]est similaire à XML en ce qu'il stocke également et vous permet d'envoyer des données dans un format normalisé. JSON utilise simplement une méthodologie différente, basée sur des objets, pour stocker systématiquement les données.

  • HTTP [ H yper T ext T ransfer P rotocol]est la base du transfert de données et de communications sur Internet.

  • SOAP [ S enœuvre O bjet A ccess P ROTOCOLE]est un protocole de messagerie utilisé pour échanger des informations structurées [de données XML]sur un réseau.

  • REST   [ RE  présentation S tate T ransfert] est un style architectural standardisé qui peut être utilisé lors de la création d' une API Web.

  • Les applications Web  ( application  Web) sont des programmes informatiques auxquels on accède via Internet via le navigateur Web d'unordinateur.

 

Et un Webservice alors ?

Un service Web  est un moyen pour deux machines de communiquer entre elles sur un réseau.

Un   service exécuté sur un ordinateur écoute les demandes d'autres ordinateurs. Lorsqu'une requête d'un autre ordinateur est reçue, sur un réseau, le service Web renvoie les ressources demandées. Cette ressource peut être JSON, XML, un fichier HTML, des images, des fichiers audio, etc.

Il est important de noter que la demande doit être effectuée sur un réseau.

 

Qu'est-ce qu'une API ?

Une API , ou A pplication P ROGRAMMATION I nterface, est un ensemble de définitions et de protocoles qui permettent de communiquer avec une autre application une application.

 

 

Alors, quelle est la différence ?

Vous vous demandez si les API et les services Web ressemblent à la même chose ? C'est un moyen pour deux ordinateurs de communiquer entre eux sur Internet, n'est-ce pas ? Eh bien, pas tout à fait.

Comme nous l'avons mentionné, toutes les API ne sont pas accessibles via Internet (un réseau), tandis que les services Web doivent toujours  être accessibles via un réseau. C'est là toute la différence.

Tous les services Web sont des API, mais toutes les API ne sont pas des services Web.

 

Alors, une API REST est-elle un service Web ?

La réponse courte ? Oui, les API REST sont un type d'API de service Web.

Une API REST est un style d'architecture standardisé pour la création d'une API de service Web. L'une des exigences pour être une API REST est l'utilisation de méthodes HTTP pour effectuer une requête sur un réseau.

REST a été officiellement défini par l'informaticien Roy Fielding en 2000 lors de son doctorat. dissertation . Cela a essentiellement changé la façon dont les applications sont construites. L'implémentation du « client » frontal peut être construite de manière totalement indépendante du « serveur » principal.

Une requête REST du client au serveur se compose généralement des composants suivants :

  • Chemin d'URL  [https://api.example.com/user]

  • Méthode HTTP  [GET,PUT, POST, PATCH, DELETE]

  • En - tête  -(facultatif) informations supplémentaires que le client doit transmettre dans la demande, telles que les informations d'identification d'autorisation, le type de contenu du corps, l'agent utilisateur pour définir le type d'application qui effectue la demande,etc.]

  • Paramètres  -(facultatif) champs variables qui modifient la façon dont la ressource sera renvoyée.

  • Corps  -(facultatif) contient des données qui doivent être envoyées au serveur.

 

On vous explique comment fonctionne l'API REST :

Disonsque vous voulez voir ce que votre meilleur ami a posté sur Instagram . Pour ce faire, vous devez aller sur l'application et ouvrir la page Instagram de vos amis.

Dans cet exemple, votre application Instagram [le client] ferait une demande au serveur d'Instagram [le serveur] pour demander le profil Instagram de votre ami. Cette demande serait une demande GET au point de terminaison /users et dans les paramètres de la demande,l'ID de compte de votre ami serait inclus.

  • Méthode HTTP : GET

  • URL : https://api.instagram.com/v1/users/

  • Paramètres : user={best_friends_user_id}

[Avertissement : Ceci est un exemple très simplifié d'une demande à l'API Instagram]

De lamême manière que vous utilisez une requête GET pour récupérer des données, une requête POST serait utiliséepour créer des données sur une plate-forme. Utilisons donc l'exemple de la publication d'une imagesur Instagram. Cette demande serait une demande POST au point de terminaison /media avec un corps de l'image et des paramètres avec votre légende.

  • Méthode HTTP : POST

  • URL : https://api.instagram.com/v1/media/

  • Paramètres : caption={my_great_caption}&user={my_user_id}

  • Corps : Image à télécharger

[Avertissement :Il ne s'agit pas d'un exemple de demande précis à l'API Instagram. Le point de terminaison post média est un point de terminaison privé.]

Avantages des API REST

La raison pour laquelle REST est si génial est qu'il offre une méthodologie standardisée pour faire des requêtes à une API. Une fois que vous aurez appris une API REST, les autres API REST fonctionneront de la mêmemanière.

Si une API est disponible sur Internet, il n'est pas nécessaire d'installer un logiciel supplémentaire dans votre application. Vous pouvez accéder aux données depuis n'importe quelle application connectée au même réseau que l'API.

Avec un développement séparé sur le client et le serveur, le code client peut être mis à jour sans affecter le serveur, et le code serveur peut être mis à jour sans affecter le serveur. Cela suppose que les modifications sont développées de manière rétrocompatible.

 

Les différences fondamentales

Si vous avezavez un peu perdu votre lecture sur les API et les services Web, voici un bref résumé de ce que nous avons couvert ci-dessus.

  • Les API sont des interfaces d'application, ce qui signifie qu'une application est capable d'interagir avec une autre application de manière standardisée.

  • Les services Web sont un type d'API, qui doit être accessible via une connexion réseau.

  • Les API REST sont une architecture standardisée pour la création d'API Web à l'aide de méthodes HTTP.

Nous espérons que cet article vous a aidé à trier les différences, les tenants et les aboutissants et les informations générales que vous pourriez avoir besoin de connaître pour une API et un service Web.

 

Vos premiers pas avec les API

Prêt à commencer à travailler avec les API ? Commencez à parcourir les API de HappyAPI et testez les appelsd'API directement dans le navigateur. Construisez quelque chose de formidable dès maintenant. 

D'autres infos

Retour à la rubrique actualitésCatalogue d'API