Emilio J. Gomez
Buscar en moleculax
SOAP (Simple Object Access Protocol)

Modelo SOAP

SOAP (Simple Object Access Protocol)

Definición

SOAP es un protocolo de mensajería basado en XML que permite la comunicación estructurada entre aplicaciones distribuidas en red. Fue desarrollado inicialmente por Microsoft y adoptado por la W3C como estándar. Se usa sobre todo en servicios web que requieren seguridad y confiabilidad.

Características principales

  • Basado en XML para estructurar mensajes.
  • Usa principalmente HTTP/HTTPS como transporte (también SMTP, JMS, etc.).
  • Extensible mediante cabeceras personalizadas.
  • Estándar formal que asegura interoperabilidad.
  • Compatible con especificaciones WS-* (WS-Security, WS-ReliableMessaging, etc.).

Estructura de un mensaje SOAP

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
  <soap:Header>
    
  </soap:Header>
  <soap:Body>
    <m:GetUserRequest xmlns:m="http://example.com/users">
      <m:UserId>123</m:UserId>
    </m:GetUserRequest>
  </soap:Body>
  <soap:Fault>
    
  </soap:Fault>
</soap:Envelope>
  

Ejemplo de uso

Petición (request)

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetUserRequest xmlns="http://example.com/usuarios">
      <UserId>1</UserId>
    </GetUserRequest>
  </soap:Body>
</soap:Envelope>
  

Respuesta (response)

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetUserResponse xmlns="http://example.com/usuarios">
      <User>
        <Id>1</Id>
        <Nombre>Emilio</Nombre>
        <Email>emilio@example.com</Email>
      </User>
    </GetUserResponse>
  </soap:Body>
</soap:Envelope>
  

Ventajas de SOAP

  • Altamente estandarizado e interoperable.
  • Seguridad integrada mediante WS-Security.
  • Manejo robusto de errores con Fault.
  • Soporte para múltiples protocolos de transporte.
  • Ideal para entornos empresariales críticos.

Desventajas de SOAP

  • Más complejo y pesado que REST.
  • Uso de XML hace que sea más verboso.
  • Curva de aprendizaje mayor.
  • Menos flexible y requiere contratos WSDL estrictos.

SOAP vs REST

Aspecto SOAP REST
Naturaleza Protocolo Estilo arquitectónico
Formato XML JSON, XML, YAML, etc.
Transportes HTTP, SMTP, JMS, etc. Solo HTTP
Complejidad Alta, con contratos WSDL Baja, simple
Seguridad WS-Security integrado Depende de HTTPS, JWT, OAuth
Uso típico Banca, seguros, sistemas críticos APIs públicas, web y móviles

.

Wikipedia

Resultados de la búsqueda

agenda 2023 (1) Algo que leer (257) Android (2) Angular (2) Apache (4) API (1) Arte y Cultura (11) Artes Marciales (10) Banner (1) Base de datos (29) Big Data (11) Budismo (4) cabala judia (2) Calculo Asistido por computadoras (2) Canaima (6) Caos (1) Ceo (1) ciencias (1) Cine (1) Cobol (1) Cobra Kai (1) Codigo Linux Documental (2) Computación (3) Computación forense (14) Configurando Samba (1) Consola (8) Criptomonedas (3) Darkweeb (3) Data Mining (1) Debian (1) DeepWeb (7) demografia (6) Deporte y Recreación (9) Deportes (10) Desktop (1) developers (1) Document (1) Ecología (6) Editor (2) Educacion y TIC (27) Electronica (2) Emprendimiento (7) Espiritualidad (2) Eventos (2) Excel (1) Express (1) Filosofía (23) Flisol 2008 (3) Flisol 2010 (1) Flisol 2015 (1) framework (1) Funny (1) Geografía (1) Gerencia y Liderazgo (72) Gestor de Volúmenes Lógicos (1) Git (5) GitHub (6) gnu (23) Go (1) gobiernos (1) golang (2) Google por dentro (1) GraphQL (1) gRPC (1) Hackers - Documental (8) Hacking (30) howto (188) html (1) IA (6) IntelliJIDEA (1) Internet (6) Introducción a los patrones (2) J SON (1) java (31) java eclipse (2) javaScript (8) JDK (1) jiujitsu (4) Json (1) kali (37) kernel (2) Kotlin (1) Laravel (2) Latin (1) LIbreOffice (1) Libros (4) Linux (34) Linux VirtualBox (1) Literatura (1) Manuales (42) Marketing (1) Matando ladilla (9) Matematricas (1) Math (1) maven (1) metodos https (1) Modelos (1) MongoDB (17) Multimedia (1) mvc (2) Mysql (19) MySQL Workbench (1) Nagios (2) Naturismo (1) node (2) Node.js (3) NodeJS (6) NoSQL (1) Oracle (3) Oracle sql (3) Php (1) PL/SQL (1) Plsql (1) PNL (1) Poblacion (2) Poesia (1) Politica (1) Política (1) Postgresql (1) PowerShell (1) programacion (66) Psicologia (8) Python (4) Redes (31) Religion (2) REST (2) Rock/Metal Mp3 (1) RUP (1) Salud (5) sc:snap:android-studio (1) sc:snap:datagrip (1) sc:snap:gitkraken linux (1) Seguridad (14) Seguridad con Gnu Privacy (2) Seo (1) simulaEntrevistas (9) Sistemas Operativos (69) SOAP (1) Sociedad (2) Software Libre (169) Soporte Tecnico (12) Sphinx (1) spring (1) spring boot (8) SQL (3) SQL en postgreSQL (38) Taekwondo (11) Tecnología (27) Tor (9) Trialectica (3) TYPEACRIPT (1) Ubuntu (5) Vida activa (1) Videos (11) Videos Educativos (10) Vim (1) Viral (3) Visual Studio (1) wallpaper (2) Wifi (2) Windows (3) WWW (2) Xrandr (1)

Powered by