presentacion ws

39
WEB SERVICES Definición, ejemplos y usos prácticos

Upload: rouxero

Post on 09-Jul-2015

899 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: Presentacion ws

WEB SERVICES

Definición, ejemplos y usos prácticos

Page 2: Presentacion ws

¿QUE ES UN WS?

El W3C define los WS como “un conjunto de aplicaciones o tecnologías con capacidad deinteroperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre sí con elobjeto de ofrecer servicios. Los proveedores ofrecen sus servicios como procedimientosremotos y los usuarios solicitan un servicio llamando a estos procedimientos a través de laweb”.

Entonces podríamos decir que un Web Service es una comunicación por medio de mensajesSOAP entre diferentes equipos.

Los servicios web se caracterizan por el uso que hacen de XML para el intercambio de datos,y su adaptación a distintos formatos, de modo que podemos compartir información entreaplicaciones.

Para conocer cómo se realiza el intercambio de mensajes en los Web Services debemosprimero saber cuáles son los elementos fundamentales que lo componen. Estos son el XML,SOAP y WSDL.

Page 3: Presentacion ws

¿QUE ES UN WS?

El W3C define los WS como “un conjunto de aplicaciones o tecnologías con capacidad deinteroperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre sí con elobjeto de ofrecer servicios. Los proveedores ofrecen sus servicios como procedimientosremotos y los usuarios solicitan un servicio llamando a estos procedimientos a través de laweb”.

Entonces podríamos decir que un Web Service es una comunicación por medio de mensajesSOAP entre diferentes equipos.

Los servicios web se caracterizan por el uso que hacen de XML para el intercambio de datos,y su adaptación a distintos formatos, de modo que podemos compartir información entreaplicaciones.

Para conocer cómo se realiza el intercambio de mensajes en los Web Services debemosprimero saber cuáles son los elementos fundamentales que lo componen. Estos son el XML,SOAP y WSDL.

Page 4: Presentacion ws

¿QUE ES UN WS?

El W3C define los WS como “un conjunto de aplicaciones o tecnologías con capacidad deinteroperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre sí con elobjeto de ofrecer servicios. Los proveedores ofrecen sus servicios como procedimientosremotos y los usuarios solicitan un servicio llamando a estos procedimientos a través de laweb”.

Entonces podríamos decir que un Web Service es una comunicación por medio de mensajesSOAP entre diferentes equipos.

Los servicios web se caracterizan por el uso que hacen de XML para el intercambio de datos,y su adaptación a distintos formatos, de modo que podemos compartir información entreaplicaciones.

Para conocer cómo se realiza el intercambio de mensajes en los Web Services debemosprimero saber cuáles son los elementos fundamentales que lo componen. Estos son el XML,SOAP y WSDL.

Page 5: Presentacion ws

XML - eXtensible Markup Language

Es un metalenguaje extensible de etiquetas desarrollado por el World Wide WebConsortium (W3C). Permite a los diseñadores/programadores crear sus propias “etiquetas”o "tags" (Ej: <libro>), habilitando la definición, transmisión, validación, y la interpretación dedatos entre aplicaciones y entre organizaciones.

Page 6: Presentacion ws

XML - eXtensible Markup Language

Page 7: Presentacion ws

SOAP

Es una herramienta para la comunicación entre sistemas dispares, que permite elintercambio de datos complejos, tanto en la solicitud como en la respuesta.

Es un protocolo para el intercambio de mensajes basado en XML, que puede ser utilizadopara el intercambio de información estructurada y de tipos concretos entre puntos de unentorno descentralizado.

Los mensajes SOAP son independientes del sistema operativo y lenguaje de programaciónutilizado y pueden transportarse en varios protocolos de internet como SMTP, MIME yHTTP.

Un servicio web de tipo SOAP se define usando un documento con un formato específicoconocido como WSDL

Page 8: Presentacion ws

WSDL

Es un protocolo basado en XML que describe los accesos al Web Service. Podríamos decir que es el manual de operación del web service, porque nos indica cuales son las interfaces que provee el Servicio web y los tipos de datos necesarios para la utilización del mismo.

WSDL describe la interfaz pública a los servicios Web. Está basado en XML y describe la forma de comunicación, es decir, los requisitos del protocolo y los formatos de los mensajes necesarios para interactuar con los servicios listados en su catálogo.

Las operaciones y mensajes que soporta se describen en abstracto y se ligan después al protocolo concreto de red y al formato del mensaje.

Page 9: Presentacion ws

Ejemplo de WSDL

Page 10: Presentacion ws

¿Como leer un WSDL?

http://postingsearcher2.ibumeran.com:8085/AvisosSearch?wsdl

<wsdl:message name="searchRequest"><wsdl:part name="parameters" element="tns:search"></wsdl:part></wsdl:message>

Links de interés

http://www.mitecnologico.com/Main/Wsdl

Page 11: Presentacion ws

¿Para que me sirve un WS en mis desarrollos?

Page 12: Presentacion ws

¿Para que me sirve un WS en mis desarrollos?

Page 13: Presentacion ws

¿Para que me sirve un WS en mis desarrollos?

En la práctica un WS puede tener muchos usos.

Page 14: Presentacion ws

¿Para que me sirve un WS en mis desarrollos?

En la práctica un WS puede tener muchos usos.

1) Algo tan sencillo como mostrar en una web el pronóstico del tiempo o la cotización de una moneda

Page 15: Presentacion ws

¿Para que me sirve un WS en mis desarrollos?

En la práctica un WS puede tener muchos usos.

1) Algo tan sencillo como mostrar en una web el pronóstico del tiempo o la cotización de una moneda

2) Consultar desde nuestras aplicaciones datos a otro servidor

Page 16: Presentacion ws

¿Para que me sirve un WS en mis desarrollos?

En la práctica un WS puede tener muchos usos.

1) Algo tan sencillo como mostrar en una web el pronóstico del tiempo o la cotización de una moneda

2) Consultar desde nuestras aplicaciones datos a otro servidor

3) Intercambiar datos en una operación con diferentes entidades ya sea consultando datos o enviando datos

Page 17: Presentacion ws

¿Para que me sirve un WS en mis desarrollos?

En la práctica un WS puede tener muchos usos.

1) Algo tan sencillo como mostrar en una web el pronóstico del tiempo o la cotización de una moneda

2) Consultar desde nuestras aplicaciones datos a otro servidor

3) Intercambiar datos en una operación con diferentes entidades ya sea consultando datos o enviando datos

4) Interactuar con diferentes lenguajes y tecnologías. Por ej. desde un Perl acceder a un WS.

Page 18: Presentacion ws

Web Service

Page 19: Presentacion ws

Bumeran.com utiliza WS para hacer diferentes tareas en todos los niveles.

-Feed en el portal-Perls-Listado de avisos (usado por las SOBDs u otras webs)

Page 20: Presentacion ws

Bumeran.com utiliza WS para hacer diferentes tareas en todos los niveles.

-Feed en el portal-Perls-Listado de avisos (usado por las SOBDs u otras webs)

Page 21: Presentacion ws

Feed en el portal

Page 22: Presentacion ws

Feed en el portal

Page 23: Presentacion ws

WS en SOBD

Page 24: Presentacion ws

WS en SOBD

Page 25: Presentacion ws

Web Service en PHP

Page 26: Presentacion ws

¿Qué es NUSOAP?

NuSOAP es un kit de herramientas (ToolKit) para desarrollar WebServices bajo el lenguaje PHP. Está compuesto por una serie de clasesque nos harán mucho más fácil el desarrollo de Web Services.

Para trabajar con NUSOAP debemos hacer un include de las libreríascorrespondientes.

Page 27: Presentacion ws

¿NuSOAP es el único soporte para Web Services en PHP?

Page 28: Presentacion ws

¿NuSOAP es el único soporte para Web Services en PHP?

No, no es el único, existen otros, pero es uno de los que están en una fase dedesarrollo mucho más avanzada.

PHP a partir de su versión 5 comienza a dar soporte para SOAP.

Page 29: Presentacion ws

WS en PHP 5

En la version 5 de PHP se incorporan las clases necesarias para la creación dewebservices y su invocación desde clientes remotes.

Como dijimos anteriormente se puede trabajar con WS consumiendo el servicio(cliente) o dando el servicio (servidor).

Page 30: Presentacion ws

Cliente en PHP 5

Page 31: Presentacion ws

Cliente en PHP 5

Consumir un WS en PHP es relativamente fácil. Solamente debemos instanciar a laclase SOAP e ir llamando a los diferentes métodos que tiene definido el WS.

Es importante para esto entender el WSDL para saber como tengo que preguntar,que métodos debo usar, que datos deben pasarse como parámetros a estosmétodos y que respuesta voy a recibir.

En ciertos casos los WS tienen autenticación HTTP por lo cual en estos casos sedebe enviar estos datos al momento de instanciar la clase

Page 32: Presentacion ws
Page 33: Presentacion ws

Servidor en PHP 5

Armar un servidor de WS a veces no resulta tan fácil. Los errores de parseo son muy difíciles de depurar así como también la mala definición de tipos de datos y operaciones.

En líneas generales un servidor WS debe tener idealmente

1) Archivo principal que será el servidor propiamente dicho. En este archivo se definirán los métodos que tendrá mi WS. index.php

Page 34: Presentacion ws
Page 35: Presentacion ws

Servidor en PHP 5

Armar un servidor de WS a veces no resulta tan fácil. Los errores de parseo son muy difíciles de depurar así como también la mala definición de tipos de datos y operaciones.

En líneas generales un servidor WS debe tener idealmente

1) Archivo principal que será el servidor propiamente dicho. En este archivo se definirán los métodos que tendrá mi WS. index.php

2) Archivo de operaciones. En este archivo se definirán las operaciones que realiza el WS, cada método de WS necesita definir una operación. En la definición se indica que datos recibe y que datos devuelve (tipo de dato complejo) – operations.php

Page 36: Presentacion ws
Page 37: Presentacion ws

Servidor en PHP 5

Armar un servidor de WS a veces no resulta tan fácil. Los errores de parseo son muy difíciles de depurar así como también la mala definición de tipos de datos y operaciones.

En líneas generales un servidor WS debe tener idealmente

1) Archivo principal que será el servidor propiamente dicho. En este archivo se definirán los métodos que tendrá mi WS. index.php

2) Archivo de operaciones. En este archivo se definirán las operaciones que realiza el WS, cada método de WS necesita definir una operación. En la definición se indica que datos recibe y que datos devuelve (tipo de dato complejo) – operations.php

3) Archivo de definición de tipo de datos complejo. En este archive se definirán todos los tipos de datos complejos a los cuales se referencia en la registración de operaciones. complextypes.php

Page 38: Presentacion ws
Page 39: Presentacion ws

Servidor en PHP 5

Armar un servidor de WS a veces no resulta tan fácil. Los errores de parseo son muy difíciles de depurar así como también la mala definición de tipos de datos y operaciones.

En líneas generales un servidor WS debe tener idealmente

1) Archivo principal que será el servidor propiamente dicho. En este archivo se definirán los métodos que tendrá mi WS. index.php

2) Archivo de operaciones. En este archivo se definirán las operaciones que realiza el WS, cada método de WS necesita definir una operación. En la definición se indica que datos recibe y que datos devuelve (tipo de dato complejo) – operations.php

3) Archivo de definición de tipo de datos complejo. En este archive se definirán todos los tipos de datos complejos a los cuales se referencia en la registración de operaciones. complextypes.php

4) Librerías adicionales con funciones y/o clases que utilicen los métodos de WS class_WS.php