Hola visitante de diseño web Alicante y Murcia - DwAlicante, Le presentamos los mejores proyectos y formatos gráficos de alta calidad con un montón de características.

Un Servicio Web es un conjunto de protocolos que se utilizan para intercambiar información entre dos aplicaciones a través de una red de computadores. Los Servicios Web actúan para facilitar que las aplicaciones puedan comunicarse entre sí. Habitualmente, las aplicaciones implicadas suelen estar desarrolladas con tecnologías de desarrollo y lenguajes de programación diferentes y, además, pueden residir en plataformas diferentes. Se utiliza un lenguaje neutro basado en XML para conseguir que los mensajes entre las aplicaciones puedan ser entendidos. El uso más generalizado del intercambio de información mediante Servicios Web se produce a través de Internet. Aunque podrían implementarse Servicios Web empleando cualquier otro tipo de red.

La interoperabilidad de los Servicios Web se garantiza utilizando estándares abiertos que gestionan diversas organizaciones y el consorcios internacionales: OASIS (Organization for the Advancement of Structured Information Standards), que orienta su desarrollo a la adopción de estándares para el comercio electrónico y los Servicios Web; W3C (World Wide Web Consortium), que produce especificaciones para los Servicios Web; y, WS-I (Web Services Interoperability), que centra sus esfuerzos en mejorar la interoperabilidad entre las distintas implementaciones de Servicios Web.

A continuación, se explica el esquema de cómo se comunican varios Servicios Web. Para ello, se considera el ejemplo de una tienda online que ofrece productos a sus clientes a través de Internet. Para completar la venta, necesita comunicarse, con la aplicación del banco y con la aplicación de pago por PayPal.

servicios web alicante

En la imagen superior se puede apreciarse como el perfil de usuario o aplicación Web, que a su vez tiene el rol de cliente del Servicio Web, solicita información sobre los productos de una tienda online. El usuario realiza una petición al propio un Servicio Web de la tienda on-line para realizar una compra. Y en última instancia, el usuario compra un producto y realiza el pago en la entidad bancaria o al de PayPal a través del Servicio Web de la tienda on-line, según el modo de pago elegido. En todo este proceso intervienen una serie de tecnologías que hacen posible la circulación de la información. A continuación se describiran cuáles son y cómo se comunican.

 

MECANISMOS Y PROTOCOLOS IMPLICADOS

Los Servicios Web se han definido como un conjunto de protocolos que se utilizan para intercambiar información entre dos aplicaciones. Estos protocolos se suelen considerar independientes entre sí, dado que el objetivo es dinamizar las posibilidades de comunicación, seleccionando los protocolos más adecuados para cada en particular. Siendo así, se denomina Pila de protocolos de los Servicios Web (Web Service Protocol Stack) al conjunto de protocolos y estándares que son utilizados para definir, implementar, localizar y hacer que un Servicio Web concreto interactúe con un cliente. La pila de protocolos se divide en cuatro áreas o capas, que hacen referencia a los servicios web que incluye, y que en general, son los siguientes: transporte, mensajería, descripción y, publicación y descubrimiento.

pila-protocolos-servicios-web1. EL SERVICIO DE TRANSPORTE

El servicio de transporte, es el responsable del envío de mensajes entre las aplicaciones a través de la red. Este servicio trabaja en el nivel más bajo, encargándose del modo cómo se codifica la información, sin preocuparse de su formato. Es el encargado de establecer la conexión y definir el puerto que se va a usar. Generalmente se utiliza el protocolo HTTP, que es el mismo protocolo que utiliza el servicio de información World Wide Web en Internet. Utilizando el protocolo HTTP, los clientes hacen uso de los Servicios Web a través de Internet. La razón de que la mayoría de los Servicios Web hagan uso del protocolo HTTP, es el uso tan extendido de los navegadores Web y la gran implantación de Internet en la actualidad. Dado que los Servicios Web originalmente no fueron pensados expresamente para utilizar el protocolo HTTP, se pueden utilizar otros protocolos, como pueden ser: SMTP (Simple Mail Transfer Protocol), protocolo de correo electrónico; FTP (File Transfer Protocol), protocolo de trasferencia de ficheros; o, el protocolo BEEP (Blocks Extensible Exchange Protocol). Este último, es un protocolo específico para su uso con Servicios Web, estando su especificación realizada en XML. A diferencia de los protocolos HTTP, SMTP y FTP, el protocolo BEEP no es estrictamente un protocolo cliente-servidor. Las aplicaciones entre las que se establece la comunicación actúan a la vez como cliente y como servidor, lo que potencia las prestaciones para el desarrollo de aplicaciones distribuidas.

 

2. EL SERVICIO DE MENSAJERÍA

El servicio de mensajería de la pila de protocolos de Servicios Web es el servicio responsable del formato de los mensajes. Se encarga de definir qué contienen los datos que se intercambian entre las aplicaciones. Es decir, especifica cómo se organiza la información de forma estructurada para que sea intercambiada entre los extremos de la invocación el Servicio Web.

El lenguaje utilizado para los mensajes es XML. Este lenguaje es una adaptación y simplificación del lenguaje SGML. XML permite definir la gramática del propio lenguaje, definiendo las propias etiquetas en cada documento. Por ejemplo, puede definirse una etiqueta que se denomine vehículo: <vehículo matricula=”1”>…, que a su vez puede incluir otras etiquetas que describan las características o propiedades de cada vehículo concreto. XML se propone como un lenguaje estándar, para el intercambio de información entre diferentes plataformas. Por esta razón XML es ideal para encargarse de la mensajería de los Servicios Web. Además este lenguaje es independiente del protocolo de transporte, de forma que se obtiene un débil acoplamiento entre los servicios.

La forma más simple de implementar el protocolo del servicio de mensajería, es enviar páginas XML directamente sobre el protocolo HTTP. Sin embargo, existen diversos protocolos específicos que interactúan con el lenguaje XML para ofrecer el servicio de mensajería. Uno de los más utilizados es el protocolo SOAP, aunque existen otros como: XML-RPC (Remote Procedure Call with XML) que utiliza el servicio de transporte HTTP exclusivamente, REST (REpresentational State Transfer) que permite manejar tipos de datos distribuidos en la Web.

 

  • XML-RPC. Es un protocolo que hace una llamada a un procedimiento remoto (RPC), que codifica las llamadas utilizando el lenguaje XML y que utiliza HTTP para la comunicación de los mensajes en la red. Permite a una aplicación ejecutar código en otra máquina sin preocuparse de las comunicaciones entre ambos, intercambiando datos mediante XML.protocolo xml-rpc
  • SOAP. Es el protocolo de mensajería recomendado para intercambiar información entre aplicaciones mediante un Servicio Web. Constituye una evolución del protocolo XML-RPC. Las características principales del protocolo SOAP son las siguientes:
    Extensibilidad. Al utilizar XML como lenguaje de comunicación, los identificadores pueden crearse y adaptarse empleando un validador de documentos o Parser.
    Neutralidad. Puede ser utilizado sobre cualquier protocolo de transporte como HTTP, SMTP, TCP, FTP, JMS, etc.
    Independencia. Admite cualquier modelo de programación. Permite la ejecución de métodos, que actúan sobre diferentes objetos y en diferentes plataformas, de modo que estos puedan comunicarse entre sí. Parece complicado conseguir que dos métodos escritos en lenguajes diferentes y que a su vez residen en máquinas diferentes con sistemas operativos distintos, puedan comunicarse entre sí. Para ello, el protocolo SOAP utiliza un lenguaje neutro basado en XML.protocolo soap
    La imagen muestra el proceso de intercambio de información empleando SOAP. En primer lugar, el cliente del Servicio Web transforma al lenguaje neutro XML, la información que define los métodos a invocar y los parámetros que se pasan a los métodos para ser enviados, a través de Internet, a los Servicios Web que reside en un servidor. En segundo lugar, el servidor, al recibir los datos XML del documento generado por el cliente, convierte el mensaje, realiza el procesamiento solicitado y vuelve a convertir los resultados del procesamiento al lenguaje neutro XML para enviárselos al cliente. Finalmente, una vez generado el documento XML resultante del procesamiento, el servidor envía la respuesta al cliente a través de Internet.

    Por ejemplo, un cliente de los Servicios Web podría enviar un mensaje SOAP a un sitio Web que tiene implementado un Servicio cuya funcionalidad es facilitar la búsqueda de la información sobre un determinado producto sobre la base de datos subyacente de una tienda online. Para recuperar la información solicitada se indican los parámetros necesarios para realizar la consulta. El sitio retornará un documento formateado en XML con el resultado de la búsqueda, que incluirá por ejemplo, el precio del producto, su localización, sus existencias, etc. Teniendo los datos de respuesta de los servicios web vienen en un formato XML, estos puede ser convertidos e integrados en un sitio Web o aplicación externa.

    El desarrollo de contenidos que se realiza en este tema se centra en el estudio de los Servicios Web que emplean XML y SOAP para el intercambio de mensajes. Sin embargo, en la actualidad, también emplea el formato JSON (JavaScript Object Notation) como alternativa al uso de XML para el intercambio de datos.

    JSON es un subconjunto de la notación literal de objetos de JavaScript que no requiere el uso de XML. La facilidad que conlleva el uso de JSON en comparación con la tarea de recorrer un documento XML para acceder a los datos contenidos, es la razón por la cual se ha extendido su uso especialmente como alternativa a XML en AJAX. La simplicidad de JSON sobre XML como formato de intercambio de datos en servicios web, reside en que un texto JSON se puede analizar usando la función eval() de JavaScript. Esta aparente simplicidad ha hecho que JSON haya sido aceptado por parte de la comunidad de desarrolladores AJAX debido a la universalidad de JavaScript sobre cualquier navegador Web.



3. EL SERVICIO DE DESCRIPCIÓN

En esta parte de la pila de protocolo de los servicios web se utiliza un lenguaje neutro descendiente de XML para conseguir que los mensajes entre el cliente y el servidor se entiendan entre sí. Este lenguaje genera una descripción de los métodos y funciones permitidas por el servidor. Los clientes deben adherirse a esta descripción, como si se tratara de un contrato. La descripción permite que se puedan adherir clientes implementados en diferentes lenguajes, siempre que sigan las normas de la descripción. El servicio de descripción se encarga de describir la interfaz abstracta a través de la cual un cliente puede acceder los servicios web y ver los detalles de cómo se debe utilizar.

A la hora de comunicarse, el cliente y los propios Servicios Web, deben llegar a un acuerdo. Deben decidir los detalles del transporte de los mensajes y el contenido de los mismos a través de un documento. Resulta necesario que se especifique la sintaxis y los mecanismos de intercambio de mensajes. De esa forma las aplicaciones involucradas en los servicios web conocerán de forma automática el formato que tienen que utilizar para comunicarse. A esta especificación se le denomina descripción del servicio y se usa para describir la interfaz pública de un Servicio Web. Habitualmente, se utiliza el protocolo WSDL que se encarga de describir la funcionalidad del Servicio Web, cuando es publicado. El lenguaje utilizado para describir los Servicios Web es XML.



  • Descripción del servicio en XML-RPC. Cuando se utiliza el protocolo XML-RPC, es necesario conocer de antemano las funciones y los métodos que proporciona el Servicio Web. Este protocolo es más limitado en comparación con WSDL y no existe una metodología para descubrir servicios en una red, como ocurre con WSDL. En cambio, la implementación del mismo es más sencilla, aunque menos escalable.


  • WSDL. Este protocolo se encarga de publicar la interface pública de los Servicios Web. Dicho de otra manera, especifica la sintaxis y los mecanismos para el intercambio de mensajes. WSDL está basado en XML y define los requisitos del protocolo y el formato de los mensajes, para interactuar con el listado de operaciones que proporciona el Servicio Web. Estas operaciones se describen de una forma abstracta. Un cliente que se va a conectar a los Servicios Web, puede acceder el documento WSDL de descripción del servicio para visualizar las operaciones disponibles  y cómo utilizarlas. La estructura de un documento WSDL integra una serie de secciones, que son:


servicio web

Las secciones de un documento WSDL proporcionan la información necesaria para poder interactuar con los Servicios Web: funciones, mensajes de entrada, mensajes de salida, protocolos, etc., aunque con estos elementos no se puede saber qué hace internamente un Servicio Web.



EL SERVICIO DE PUBLICACIÓN Y DESCUBRIMIENTO

 

Una vez que se ha construido una descripción WSDL para un Servicio Web, esta descripción debería poder ser consultada por los posibles clientes de los Servicios Web para que pudieran obtener información sobre las operaciones disponibles para su consumo. Esta reutilización de código hace necesario un sistema de publicación de las descripciones WSDL correspondientes a los Servicios Web existentes. El servicio de publicación y descubrimiento, es el encargado de esta misión, manteniendo un registro común de Servicios Web, de manera que las empresas y organismos que los generan, puedan publicar su localización y descripción. De esta forma se facilita el descubrimiento de los Servicios Web que hay disponibles en la red. El consorcio internacional sin ánimo de lucro OASIS sufraga el principal catálogo de Internet, al cual se le denomina UDDI (Universal Description, Discovery and Integration). UDDI es un servicio de directorio concebido para almacenar información de Servicios Web, donde las empresas y organismos que los desarrollan y consumen pueden registrar y buscarlos. UDDI utiliza los estándares de W3C y OASIS y, sigue las recomendaciones de la IETF (Internet Engineering Task Force). Las características principales de UDDI son:

  • Es un marco independiente a la capa del servicio de descripción. Cabe recordar, que uno de los objetivos de la pila de protocolos de los Servicios Web, es el bajo nivel de acoplamiento existente entre los servicios que la conforman.
  • Provee de un repositorio que consiste en un directorio de interfaces públicas de Servicios Web que se describe a través del protocolo WSDL, para que las empresas y organismos puedan organizar, publicar la información de los servicios y localizar los ya publicados.
  • Se comunica a través de SOAP para el registro y la petición de información.

En un mundo globalizado, considerando la expansión de Internet, se hace patente que las empresas compartan las descripciones de los Servicios Web a través de la red. La principal ventaja de publicar la descripción de un Servicio Web, consiste en facilitar su descubrimiento en un entorno de programación estándar, escalable y seguro. Los Servicios Web se diseñan como una caja negra, ocultándose su complejidad y facilitándose la comunicación con sus métodos y funcionalidades. El registro en el catálogo UDDI consta de tres partes:

  • Páginas blancas. Especifica los datos personales de la empresa propietaria del servicio, como, dirección, contactos, identificación de la empresa y otros identificadores conocidos.
  • Páginas amarillas. En este bloque, se especifica la categoría industrial. Esta es descrita en base a la taxonomía propuesta por UDDI.
  • Páginas verdes. Este último bloque, describe la información técnica del Servicio Web. Esta información la aporta quien publica el Servicio Web en el catálogo UDDI.

DwAlicante - Servicios web Alicante

Comentarios

Escriba un comentario

Deje aquí su comentario respetando las normas de buena conducta.

Código de seguridad
Refescar