Servicios web

Post on 12-Jan-2017

399 views 0 download

Transcript of Servicios web

Ferran MontesSergio Soria

1

Contenido

1. ¿Que es un Servicio Web?

2. Representational State Transfer (REST)

3. Simple Object Access Protocol (SOAP)

2

SERVICIO SERVICIO WEBWEB

3

Servicio Web ¿Qué es un Servicio Web?Conjunto de aplicaciones o de tecnologías con

capacidad para interoperar en la Web

¿Para qué sirve?Comunicación entre aplicacionesInteroperabilidad y extensibilidad

Realización de operaciones complejas

4

Servicio Web•¿Cómo funciona?

5

Servicio Web•¿Cómo funciona?

Arquitecturas:

SOA (service-oriented architecture)

SOAPWSDL (Web Services

Description Language)

UDDI (Universal Description, Discovery and Integration)

RESTEmulación HTTP

6

RESTRESTRepresentationaRepresentational State Transferl State Transfer

7

REST

•¿Qué es REST realmente?Arquitectura de software para sistemas hipermedias

distribuidos tales como la Web

•¿Cuál es la motivación de REST?

Capturar las características de la Web que la han hecho tan exitosa

Emular al protocolo HTTP o protocolos similares

8

REST•¿Cómo emulamos HTTP?

Recurso:http://www.ejemplo.com/lista

http://www.ejemplo.com/lista/recurso

HTTP:HTTP AcciónPUT Crear

GET Obtener

POST Actualizar

DELETE Eliminar

9

•¿Cómo emulamos REST?

REST

Sin REST: Con REST:

10

RESTRESTEjemploEjemplo

11

SOAPSOAPSimple Object Simple Object

Access ProtocolAccess Protocol12

SOAPArquitecturaProtocolo de transporte: sobretodo HTTP o SMTP

(petición – respuesta).

Mensaje XML: SOAP Envelope SOAP Header SOAP Body

14

SOAPSOAP Envelope (obligatorio):Namespace (xmlns:soap namespace):

Define el mensaje XML como SOAP.encodingStyle (soap:encodingStyle="URI“):

Define el tipo de datos del mensaje. Puede encontrarse en cualquier parte del mensaje.Se aplica a todos los elementos del mensaje.

15

SOAPSOAP Header (opcional):mustUnderstand (soap:mustUnderstand="0|1“):

Indica si el receptor ha de procesor o no el header.

Actor (soap:actor="URI" ):El valor en incluido en esta etiqueta solo está

disponible para la máquina definida en “URI”. Si no existe

16

SOAPSOAP Body (obligatorio):Contiene el mensaje SOAP destinado a la máquina

final.Formado por los elementos hijo definidos por el

emisor mediante etiquetas.

17

SOAPEjemplo

REQUEST

RESPONSE

18

SOAPVentajas:Extensibilidad

Basado en XML.Neutralidad

Orientado a mensaje, puede utilizar varios protocolos de transporte (HTTP, SMTP, TCP, JMS).

Independencia Plataforma. Lenguaje de programación (Java, .NET, Flex).

19

SOAPDeventajas:XML puede ralentizar el procesado, mala opción en

mensajes grandes.

Mensaje incluido en el cuerpo de HTTP, se requiere mayor análisis desde el firewall.

Poco soporte en Python y PHP.

20

Enlaces de interés

http://www.vogella.com/articles/REST/article.html

http://en.w3schools.com/soap

http://en.wikipedia.org/wiki/SOAP

21

GraciasGracias

22