Existe-t-il une différence entre une API web et un service web? Ou sont-ils identiques?
Un service Web propose généralement un WSDL à partir duquel vous pouvez créer automatiquement des stubs clients. Les services Web sont basés sur le protocole SOAP . L'API Web ASP.NET est un framework Microsoft plus récent qui vous aide à créer des interfaces basées sur REST . La réponse peut être JSON ou XML, mais il n’existe aucun moyen de générer des clients automatiquement car l’API Web n’offre pas de description de service comme le WSDL à partir de Web Services . Cela dépend donc de vos exigences, de l’une des techniques que vous souhaitez utiliser. Peut-être même WCF correspond-il mieux à vos besoins, il suffit de consulter la documentation MSDN.
La différence fondamentale entre les services Web et les API Web
Service Web:
1) Il s’agit d’un service SOAP qui renvoie les données au format XML.
2) Il ne supporte que le protocole HTTP.
3) Ce n’est pas une source ouverte, mais peut être utilisé par tout client qui comprend XML.
5) Un protocole SOAP est nécessaire pour recevoir et envoyer des données sur le réseau. Il ne s’agit donc pas d’une architecture légère.
API Web:
1) Une API Web est un service basé sur HTTP et renvoie les données JSON ou XML par défaut.
2) Il supporte le protocole HTTP.
3) Il peut être hébergé dans une application ou IIS.
4) Il est open source et peut être utilisé par tout client comprenant JSON ou XML.
5) Son architecture est légère et convient aux appareils à bande passante limitée, comme les appareils mobiles.
Je viens de coller le résumé de l'article lié:
Résumé:
Tous les services Web sont des API, mais tous les API ne sont pas des services Web.
Les services Web peuvent ne pas effectuer toutes les opérations qu'une API effectuerait.
Un service Web utilise uniquement trois styles d'utilisation: SOAP, REST et XML-RPC pour communication alors que l'API peut utiliser n'importe quel style de communication.
Un service Web a toujours besoin d’un réseau pour son fonctionnement, alors qu’une API n’a pas besoin d’un réseau pour son fonctionnement.
Une API facilite l'interfaçage direct avec une application alors qu'un service Web est un ...
Lire la suite: Différence entre l'API et le service Web | Différence entre | API vs Web Service http://www.differencebetween.net/technology/internet/difference-between-api-and-web-service/#ixzz3e3WxplAv
Voir le lien ci-dessus pour la réponse complète.
Le service Web est absolument identique à l'API Web - un peu plus limité en termes de format de données sous-jacent. Les deux utilisent le protocole HTTP et permettent de créer des services RESTful ..__ Et n'oubliez pas pour d'autres protocoles tels que JSON-RPC - ils conviennent peut-être mieux.
Un service Web si vous voulez est une API Web. Plus précisément, API Web signifie généralement un service Web RESTful (basé sur HTTP) et Service Web signifie généralement SOAP + WSDL (+ HTTP ou SMTP ou JMS ..).
En règle générale, les services Web RESTful s'opposent aux services Web (WSDL, SOAP), mais on a récemment introduit le terme de services Web RESTful (avec la lettre 'W' majuscule) qui signifie RESTful + WSDL + SOAP ..
Consultez ce tableau pour les différences entre les trois concepts: http://www2.mokabyte.it/cms/figureproviderservlet?figureId=IUS-6NS-OBV_7f000001_19624184_5621ef4e--Fig02.jpg
J'espère que ça aide!
Dans le contexte ASP.Net, une API Web est un contrôleur dont la classe de base est ApiController et n'utilise pas Views . Un service Web est une classe dérivée de WebService et possède une génération WSDL automatique. Par défaut, il s'agit d'une API SOAP, mais vous pouvez également utiliser JSON en ajoutant un ScriptServiceAttribute .