Quelle est la différence entre un webservice et une API? La différence est-elle plus importante que le protocole utilisé pour transférer des données? Merci.
web-services
api
terminology
frites
la source
la source
Réponses:
Une API (Application Programming Interface) est le moyen par lequel des tiers peuvent écrire du code qui s'interface avec un autre code. Un service Web est un type d'API, qui fonctionne presque toujours sur HTTP (bien que certains, comme SOAP, puissent utiliser des transports alternatifs, comme SMTP). La définition officielle du W3C mentionne que les services Web n'utilisent pas nécessairement HTTP, mais c'est presque toujours le cas et est généralement supposé sauf indication contraire.
Pour des exemples de services Web en particulier, voir SOAP , REST et XML-RPC . Pour un exemple d'un autre type d'API, une écrite en C pour une utilisation sur une machine locale, voir l' API du noyau Linux .
En ce qui concerne le protocole, une API de service Web utilise presque toujours HTTP (d'où la partie Web) et implique définitivement une communication sur un réseau. Les API en général peuvent utiliser tous les moyens de communication de leur choix. L'API du noyau Linux, par exemple, utilise des interruptions pour appeler les appels système qui composent son API pour les appels depuis l'espace utilisateur.
la source
Fondamentalement, un webservice est une méthode de communication entre deux machines tandis qu'une API est une couche exposée vous permettant de programmer contre quelque chose.
Vous pourriez très bien avoir une API et la principale méthode d'interaction avec cette API est via un webservice.
Les définitions techniques (gracieuseté de Wikipedia) sont:
API
Service Web
la source
Dans un sens générique, un webservice EST une API sur HTTP. Ils utilisent souvent JSON ou XML, mais il existe également d'autres approches.
la source
Les API sont une interface publiée qui définit comment le composant A communique avec le composant B.
Par exemple, Doubleclick possède une API Java publiée qui permet aux utilisateurs d'interroger les tables de base de données pour obtenir des informations sur leur campagne de publicité en ligne.
par exemple appelez GetNumberClicks (nom d'utilisateur)
Pour implémenter l'API, vous devez ajouter le fichier Doubleclick .jar à votre chemin de classe. L'appel est local.
Un service Web est une forme d'API où l'interface est définie au moyen d'un WSDL. Cela permet l'appel à distance d'une interface via HTTP.
Si Doubleclick implémentait son interface en tant que service Web, ils utiliseraient quelque chose comme Axis2 fonctionnant dans Tomcat.
L'utilisateur distant appelle le service Web
par exemple appeler GetNumberClicksWebService (nom d'utilisateur)
et le service GetNumberClicksWebService appellerait GetNumberClicks localement.
la source
API (Application Programming Interface), le formulaire complet lui-même suggère qu'il s'agit d'une interface qui vous permet de programmer pour votre application avec l'aide ou le support d'une autre interface d'application qui expose une sorte de fonctionnalité utile à votre application.
Par exemple, afficher les taux de change mis à jour sur votre site Web nécessiterait une interface tierce pour la programmation, à moins que vous ne prévoyiez d'avoir votre propre base de données avec des taux de change et des mises à jour régulières. Cet ensemble de fonctionnalités est lorsqu'il est déjà disponible avec quelqu'un d'autre et lorsqu'il veut le partager avec d'autres, il doit avoir un point de terminaison pour communiquer avec les autres qui sont intéressés par de telles interactions afin de le déployer sur le Web au moyen du Web. prestations de service. Ce point final n'est rien d'autre que l'interface de leur application contre laquelle vous pouvez programmer, d'où l'API.
la source
L'API est une intégration basée sur du code tandis que le service Web est une intégration basée sur un message avec des normes interopérables ayant un contrat tel que WSDL.
la source
Considérez le service Web comme une API Web. L'API est désormais un terme si général qu'un service Web est une interface vers des fonctionnalités, généralement liées à l'entreprise, auxquelles vous pouvez accéder à partir du réseau via une variété de protocoles.
la source
Consultez ce http://en.wikipedia.org/wiki/Web_service
Comme le lien mentionné, l'API Web est un développement de services Web qui se rapporte probablement au Web 2.0, tandis que les services basés sur SOAP sont remplacés par des communications basées sur REST. Notez que les services REST ne nécessitent pas de définitions XML, SOAP ou WSDL de service-API, ce qui est très différent du service Web traditionnel.
la source
un autre exemple: google map api vs google direction api web service, tandis que le premier sert (délivre) un fichier javascript au site (qui peut ensuite être utilisé comme api pour créer de nouvelles fonctions), le dernier est un service Web Rest fournissant des données ( au format json ou xml), qui peut être traité (mais pas utilisé dans un sens api).
la source