Imaginez que vous développez une application Web et que vous décidez de découpler la fonctionnalité de la présentation de l'application, car elle offre une plus grande liberté.
Vous créez une API et laissez les autres implémenter leurs propres frontaux dessus. Ce que vous venez de faire ici est de mettre en œuvre une méthodologie SOA , c'est-à-dire en utilisant des services Web.
Les services Web rendent les blocs fonctionnels accessibles via des protocoles Internet standard indépendamment des plates-formes et des langages de programmation.
Ainsi, vous concevez un mécanisme d'échange entre le back-end (web-service) qui fait le traitement et la génération de quelque chose d'utile, et le front-end (qui consomme les données), qui pourrait être n'importe quoi. (Une application Web, mobile ou de bureau, ou un autre service Web). La seule limitation ici est que le front-end et le back-end doivent "parler" le même "langage".
C'est là qu'interviennent SOAP et REST. Ce sont des moyens standard que vous choisirez pour communiquer avec le service Web.
SAVON:
SOAP utilise en interne XML pour envoyer des données dans les deux sens. Les messages SOAP ont une structure rigide et le XML de réponse doit alors être analysé.
WSDL est une spécification des requêtes qui peuvent être faites, avec quels paramètres et ce qu'elles renverront. C'est une spécification complète de votre API.
DU REPOS:
REST est un concept de design.
Le World Wide Web représente la plus grande implémentation d'un système conforme au style architectural REST.
Ce n'est pas aussi rigide que SOAP. Les services Web RESTful utilisent des URI et des méthodes standard pour appeler le service Web. Lorsque vous demandez un URI, il retourne la représentation d'un objet, sur lequel vous pouvez ensuite effectuer des opérations (par exemple GET, PUT, POST, DELETE). Vous n'êtes pas limité à choisir du XML pour représenter des données, vous pouvez vraiment choisir n'importe quoi (JSON inclus)
L'API REST de Flickr va plus loin et vous permet également de renvoyer des images.
JSON et XML sont des choix fonctionnellement équivalents et courants. Il existe également des frameworks basés sur RPC comme GRPC basé sur Protobufs et Apache Thrift qui peuvent être utilisés pour la communication entre les producteurs et les consommateurs d'API. Le format le plus couramment utilisé par les API Web est JSON car il est facile à utiliser et à analyser dans toutes les langues.
WSDL : signifie langage de description de service Web
Dans SOAP (Simple Object Access Protocol), lorsque vous utilisez un service Web et ajoutez un service Web à votre projet, vos applications clientes ne connaissent pas les fonctions du service Web. De nos jours, c'est en quelque sorte démodé et pour chaque type de client différent, vous devez implémenter différents
WSDL
fichiers. Par exemple, vous ne pouvez pas utiliser le même fichier pour.Net
etphp
client. LeWSDL
fichier contient quelques descriptions sur les fonctions du service Web. Le type de ce fichier estXML
.SOAP
est une alternative pourREST
.REST : signifie transfert d'état de représentation
C'est un autre type de service API, il est vraiment facile à utiliser pour les clients. Ils n'ont pas besoin d'avoir une extension de fichier spéciale comme les
WSDL
fichiers. L'opération CRUD peut être implémentée par différentsHTTP Verbs
(GET pour la lecture, POST pour la création, PUT ou PATCH pour la mise à jour et DELETE pour la suppression du document souhaité), elles sont basées sur leHTTP
protocole et la plupart du temps la réponse est au formatJSON
ou auXML
format. D'autre part, l'application cliente doit appeler exactement lesHTTP Verb
noms et types de paramètres associés . En raison de l'absence de fichier spécial pour la définition, par exempleWSDL
, il s'agit d'un travail manuel utilisant le point de terminaison. Mais ce n'est pas un gros problème car nous avons maintenant beaucoup de plugins pour différents IDE pour générer l'implémentation côté client.SOA : Stands for Service Oriented Architecture
Comprend toute la programmation avec les concepts et l'architecture des services Web. Imaginez que vous souhaitiez implémenter une application à grande échelle. Une pratique peut être d'avoir différents services, appelés micro-services et l'ensemble du mécanisme d'application appellerait le service Web nécessaire au bon moment. Les deux
REST
etSOAP
les services Web sont en quelque sorteSOA
.JSON : signifie
javascript Object Notation
lorsque vous sérialisez un objet pour javascript, le type de format d'objet est JSON. imaginez que vous avez la classe humaine:
et vous avez quelques instances de cette classe:
lorsque vous sérialisez l'objet h1 en JSON, le résultat est:
javascript
peut évaluer ce format pareval()
fonction et créer un tableau associatif à partir de cetteJSON
chaîne. Celui-ci est un concept différent par rapport aux autres concepts que j'ai décrits précédemment.la source