INSTITUTO TECNOLÓGICO DE CERRO AZUL
Programación web
6.1 Conceptos generales
W3C define un “servicio web” como “un sistema de software diseñado para soportar la interacción interoperable de máquina a máquina en una red“. Cuenta con una interfaz descrita en un formato procesable por máquina (específicamente Servicios Web de lenguaje de descripción, conocido por el acrónimo WSDL). Otros sistemas interactúan con el servicio Web de una manera prescrita por su descripción utilizando mensajes SOAP, típicamente transportados utilizando HTTP con una serialización XML en conjunción con otros estándares relacionados con
Servicios Web.
Además W3C indica que podemos identificar dos clases principales de servicios Web, servicios Web REST-compliant, en la que el objetivo principal del servicio es de manipular representaciones XML de recursos web utilizando un conjunto uniforme de “operacionesn stateless”; y servicios Web arbitrariOS , en el que el servicio puede exponer un conjunto arbitrario de operaciones
Básicamente, un servicio web (webservice) es un sistema de entrada/salida, al que se le puede pasar una serie de parámetros con el fin de obtener un resultado en concreto y recuperarlo para ser mostrado en una aplicación.
Ejemplo servicios Web
La tecnología de los servicios web es relativamente reciente, y está basada en el protocoloSOAP (Simple Object Access Protocol), consistente en un simple documento XML que habilita el intercambio de información vía HTTP entre diversas aplicaciones.
La ventaja de este protocolo radica en una comunicación efectiva independiente del lenguaje de programación que defina a la aplicación.
WSDL (Web Services Description Language) es el nombre del lenguaje utilizado para describir un servicio web. El mismo utiliza el formato wsdl como extensión para sus archivos. Estos últimos son referenciados desde una URL, e incluyen una serie de métodos y operaciones que serán llamados desde la aplicación central del lado del cliente.
De ahi la necesidad de Servicios Web en un mundo Internet. De la misma manera que el software de conectividad de componentes permite hacer uso de la funcionalidad contenida dentro de otra pieza de software en otro computador, los Servicios Web usan los protocolos de Internet para proveer una infraestructura de componentes para el desarrollo de componentes distribuidos que funcionen sobre la red pública. En pocas palabras, los Servicios Web son aplicaciones modulares que pueden ser descritas, localizadas, e invocadas sobre una red a través de un intercambio estandarizado de mensajes XML.
Definidos por nuevos estándares – como SOAP (Simpla Object Access Protocol), WSDL (Web Services Description Language), y UDDI (Universal Discovery Description and Integration) – los Servicios Web ofrecen un nuevo modelo para la creación de aplicaciones e-Business a partir de módulos reutilizables de software a los que se tiene acceso a través de la Web.
Ventajas de los servicios web :
· Aportan interoperabilidad entre aplicaciones de software independientemente de sus propiedades o de las plataformas sobre las que se instalen.
· Los servicios Web fomentan los estándares y protocolos basados en texto, que hacen más fácil acceder a su contenido y entender su funcionamiento.
· Permiten que servicios y software de diferentes compañías ubicadas en diferentes lugares geográficos puedan sercombinados fácilmente para proveer servicios integrados.
· Basado en estándares
Desventajas de los servicios web :
· Al apoyarse en HTTP, pueden esquivar medidas de seguridad basadas en firewall cuyas reglas tratan de bloquear
· La comunicación entre programas.
·Existe poca información de servicios web para algunos lenguajes de programación
· No es la solución a todos los problemas
· Relativamente nuevo, algunos estándares no definidos
· Dependencia de la disponibilidad de servidores y comunicaciones
Operaciones de Servicios Web
-
Publicar/Cancelar. Los proveedores de servicios publican (publicitan) la disponibilidad de su servicio comercial (e-business) a uno o más Registros de servicios, o cancelan la publicación de su servicio.
-
Búsqueda. Los solicitantes de servicios interactúan con uno o más Registros de servicios para descubrir un conjunto de servicios comerciales con los que pueden interactuar para encontrar una solución.
-
Ligar, Unir (Bind). Los solicitantes de servicios negocian con los proveedores de servicios para acceder e invocar servicios comerciales (e-business)