Qu'est-ce que SOAP
SOAP (Simple Object Access Protocol) est un protocole de communication basé sur XML pour l'échange de messages entre services. Historiquement dominant dans les architectures SOA d'entreprise, SOAP reste utilisé dans de nombreux systèmes legacy, services financiers et intégrations B2B où la formalité du contrat (WSDL) est requise.
Structure d'un message SOAP
Envelope
Élément racine obligatoire. Définit le namespace SOAP et contient Header et Body.
Header
Optionnel. Contient métadonnées : authentification, transactions, routing.
Body
Obligatoire. Contient le message réel : requête ou réponse du service.
Fault
Élément d'erreur dans le Body. Contient faultcode, faultstring, detail.
SOAP vs REST
- Format : SOAP = XML uniquement, REST = JSON/XML/autre
- Contrat : SOAP a WSDL formel, REST souvent OpenAPI/Swagger
- État : SOAP peut être stateful, REST est stateless
- Usage : SOAP pour enterprise/legacy, REST pour web/mobile modernes