Del curso: Fundamentos de la programación: API y servicios web

Tipos de servicios web

Como sabes, los servicios web o "web services" son sistemas de software creados para permitir la interacción máquina a máquina a través de una red. Se habla continuamente de que los servicios web ofrecen interoperabilidad, que es la capacidad de los sistemas de compartir datos y posibilitar el intercambio de información y conocimiento entre ellos. La W3C ideó este sistema de manera que cuente con una interfaz descrita en formato procesable por un equipo informático (WSDL), que permite interactuar con el sistema mediante mensajes SOAP transmitidos utilizando la serialización XML sobre HTTP con otros estándares web. Los "web services" se comunican con protocolos abiertos y son autocontenidos y autodescritos, es decir, son legibles por humanos y separables independientemente. No debemos confundir las aplicaciones web con servicios web, ya que las aplicaciones web son simplemente aplicaciones que se ejecutan en una página. Los servicios web, sin embargo, se crean con estándares comunes para ser utilizados en cualquier navegador de cualquier plataforma. Para mantener la comunicación en red, es necesaria una arquitectura en torno a la interacción entre clientes y servidores. Esta, generalmente, se basa en el envío de solicitudes y respuestas con datos entre ambos. Existen varios tipos de servidores web, entre los que destacan, por un lado, las aplicaciones y componentes reutilizables. Existen servicios que se repiten y cuya implementación repetida lleva a los sistemas a ser más pesados y exigir más tiempo de desarrollo. Gran parte de los servicios web son aplicaciones que ofrecen este tipo de servicio, predicciones del tiempo, conversión de moneda, etc., de tal manera que en nuestras aplicaciones solo tenemos que implementar llamadas a este tipo de servicios para obtener los datos que ofrecen. Por otro lado, encontramos plataformas de conexión entre software existente. Los "web services" proporcionan maneras de mantener la interoperabilidad entre sistemas, permitiendo el intercambio de datos entre diferentes aplicaciones y diferentes plataformas al margen del lenguaje de programación. Los servicios web tienen diferentes tipos de interfaces y protocolos que definen las reglas y condiciones para conseguir la comunicación de manera más o menos efectiva. Estas interfaces pueden ser SOAP o REST y poseen características propias bien definidas.

Contenido