¿Que es SOAP?

Aprendiendo Programación, Varios Add comments

 

image 

SOAP = Services Object Access Protocol

 

En el post anterior hable un poco sobre los web service, hoy empezare a hablar sobre SOAP que es uno de los estándares del web services, los otros son el UDDI y WSDl de los cuales hablare en otro post.

***Algunos terminos estan en ingles ya que asi los entenderan mejor y no se perderan a leerlos en otras paginas o libros.

SOAP es:

  • Un protocolo estándar basado en los web services.
  • Un estándar xml usado para permitir la comunicación entre web services y clientes.
  • Este contiene un set de reglas serializadas que permite el envió y recepción de información.
  • Permite a diferentes empresas comunicarse e intercambiar información en mensajes SOAP.

 

Entre las características de SOAP tenemos:

  • Es independiente del lenguaje de programación
  • Es independiente de la plataforma
  • No requiere tecnologías en el “end points”
  • Es un protocolo orientado a objetos.

Un mensaje SOAP consiste en los siguientes elementos:

  1. SOAP Envelope element
  2. SOAP Header element
  3. SOAP Body element

SOAP Envelope Element:

Está en el directorio raíz de un mensaje SOAP, este elemento define los documentos XML como un mensaje SOAP.

Ejemplo:

   2: <?xml version="1.0"?>
   3: <soap:Envelope
   4: xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
   5: soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
   6:   ...
   7:   La informacion del mensaje va aqui.
   8:   ...
   9: </soap:Envelope>

 

SOAP Header element:

Es usado para mandar meta información acerca de los mensajes SOAP. Este contiene información especifica de la aplicación, como la autenticación, transacción y pago de información relatada a el mensaje SOAP.

El SOAP header element necesita ser el primer hijo(o primer nudo) de el SOAP Envelope element.

SOAP Body Element:

Este contiene el mensaje que será comunicado entre dos aplicaciones. Es un elemento obligatorio que debe contener un mensaje SOAP. El SOAP Body element contiene especificaciones acerca del tipo de request hecho por el cliente, tales como Remote Procedure Calls (RPC).

El Body element también contiene un "Fault element" que es opcional el cual guarda los mensajes de error que han sido relacionados con el mensaje SOAP.

En el siguiente código esta el esqueleto completo de un mensaje SOAP.

   1: <?xml version="1.0:"?>
   2: <soap:Envelope
   3:     xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
   4:     soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
   5:     <soap:Header>
   6:     ....
   7:     ....
   8:     Recordar que aqui esta la informacion de la aplicacion, como por ejemplo la transaccion.
   9:     ....
  10:     ....
  11:     </soap:Header>
  12:     <soap:Body>
  13:     ....    
  14:         Aqui estan las especificacion del tipo request hecha por el cliente como RPC
  15:     ....
  16:     <soap:Fault>
  17:     ...
  18:     ...Informacion de errores 
  19:     ...
  20:     </soap:Fault>
  21:     </soap:Body>
  22: </soap:Envelope>

 

Cualquier duda o corrección dejar comentarios.

Deja Un Comentario

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Log in