API vs service Web
API et service Web servent de moyen de communication. La seule différence est qu'un service Web facilite l'interaction entre deux machines sur un réseau. Une API agit comme une interface entre deux applications différentes afin qu'elles puissent communiquer entre elles. Une API est une méthode par laquelle les fournisseurs tiers peuvent écrire des programmes qui s’interfacent facilement avec d’autres programmes. Un service Web est conçu pour avoir une interface décrite dans un format pouvant être traité par une machine, généralement spécifié dans WSDL (Web Service Description Language). «HTTP» est généralement le protocole de communication le plus utilisé. Le service Web utilise également SOAP, REST et XML-RPC comme moyen de communication. L'API peut utiliser n'importe quel moyen de communication pour initier une interaction entre les applications. Par exemple, les appels système sont appelés à l'aide d'interruptions par l'API du noyau Linux..
Une API définit exactement les méthodes permettant à un logiciel d’interagir avec l’autre. Lorsque cette action implique l'envoi de données sur un réseau, les services Web entrent en scène. Une API implique généralement l’appel de fonctions à partir d’un logiciel.
Dans le cas d'applications Web, l'API utilisée est basée sur le Web. Les applications de bureau telles que les feuilles de calcul et les documents Word utilisent des API VBA et COM qui n'impliquent pas de service Web. Une application serveur telle que Joomla peut utiliser une API basée sur PHP présente sur le serveur et ne nécessitant pas de service Web..
Un service Web est simplement une API enveloppée dans HTTP. Une API n'a pas toujours besoin d'être basée sur le Web. Une API consiste en un ensemble complet de règles et de spécifications que doit suivre un logiciel pour faciliter l’interaction. Un service Web peut ne pas contenir un ensemble complet de spécifications et parfois ne pas être en mesure d'exécuter toutes les tâches possibles à partir d'une API complète..
Les API peuvent être exposées de différentes manières: objets COM, fichiers DLL et .H en langage de programmation C / C ++, fichiers JAR ou RMI en Java, XML sur HTTP, JSON sur HTTP, etc. La méthode utilisée par Web service pour exposer l'API est strictement à travers un réseau.
Résumé:
1. Tous les services Web sont des API, mais tous les API ne sont pas des services Web..
2. Les services Web peuvent ne pas effectuer toutes les opérations qu'une API effectuerait.
3. Un service Web n’utilise que trois styles d’utilisation: SOAP, REST et XML-RPC pour
communication alors que l'API peut utiliser n'importe quel style de communication.
4. Un service Web a toujours besoin d’un réseau pour fonctionner, alors qu’une API n’a pas besoin
un réseau pour son fonctionnement.
5. Une API facilite l’interface directe avec une application alors qu’un service Web est un