1. INSTITUTO TECNOLÓGICO DE TEHUACÁN
INGENIERÍA EN SISTEMAS COMPUTACIONALES
Programación Web
Jorge CibrianLópez
Mayo 2013
Servicios Web
2. Existen numerosas definiciones de Servicios Web y esto demuestra, en parte, la gran
complejidad de los servicios que se agrupan bajo este término y las implicaciones asociadas
a ellos.
Hasta ahora la definición más general y convincente es decir que los Servicios Web son el
conjunto de aplicaciones o tecnologías con capacidad para la Web. Estas tecnologías
intercambian datos entre ellas con el fin de ofrecer unos servicios.
La World Wide Web no es sólo un espacio de información, también es un espacio de
interacción. Utilizando la Web como plataforma, los usuarios, de forma remota, pueden
solicitar un servicio que algún proveedor ofrezca en la red. Pero para que esta interacción
funcione, deben existir unos mecanismos de comunicación estándares entre diferentes
aplicaciones.
Estos mecanismos deben poder interactuar entre sí para presentar la información de forma
dinámica al usuario. Se precisa, pues, una arquitectura de referencia estándar que haga
posible la interoperabilidad y extensibilidad entre las distintas aplicaciones y que permita su
combinación para realizar operaciones complejas.
Consumo de un servicio WEB
Los servicios Web XML pueden ser consumidos de dos maneras, directamente desde un
navegador o desde una aplicación de forma programática.
Las diferencias entre estas dos formas son las siguientes:
• Directamente desde el navegador. La petición se realiza vía HTTP al servidor, este
mostrará la página de hipertexto de descripción, que lista los métodos disponibles en el
servicio Web XML. En dicha página puede seleccionar algún método disponible,
interactuar con la interfaz proporcionando datos y recibir la respuesta del servicio Web
XML. La respuesta que se recibe está en XML
• Desde una aplicación, programáticamente. Se debe establecer una referencia hacia
el servicio Web XML, dicha referencia es un objeto que es utilizado para comunicarse con
el servicio Web utilizando SOAP. La clase que se genera es una equivalencia de la clase
original del servicio Web XML, con la diferencia de que no contiene la lógica de la
aplicación, en lugar de eso, la clase contiene la lógica de clasificación y transporte de datos.
La clase permite a la aplicación que consume el servicio Web XML disponer de una
respuesta manejada a través de SOAP, que permite manejar objetos más complejos que
HTTP. Se deberá en el programa generar una instancia de la clase, utilizar los métodos del
servicio Web XML y recibir los datos de la aplicación.
Para consumir un servicio Web XML desde el navegador se siguen tres pasos:
a) Publicar. El servicio debe estar disponible
b) Encontrar. Se debe tener forma de localizar el servicio
c) Enlazar. Se debe tener forma de establecer enlace entre el servicio Web XML y la
aplicación que lo consume. A este modelo se le llama Publish/Find/Bindmodel.
3. Cuando se realiza el consumo desde el navegador, todo el proceso ocurre desde el
navegador.
1. Se debe hacer una solicitud del servicio Web XML utilizando HTTP.
2. Aparecerá la página de descripción, que expone todos los métodos del servicio.
3. Se selecciona un método del servicio.
4. Se proporcionan los datos que el método requiere.
5. Se reciben los resultados del método en formato XML.
El protocolo HTTP es textual, y es incapaz de manejar objetos complejos. Como este tipo
de consumo del servicio Web XML se realiza utilizando el protocolo HTTP, la respuesta
sólo puede ofrecerse mediante XML. Si se desea que el servicio Web XML retorne objetos
complejos, como lo es un Dataset, por ejemplo, se requerirá el manejo del protocolo SOAP.
Un servicio Web XML puede ser consumido desde aplicaciones de consola, Windows
Forms, Web Forms, e incluso desde otros servicios Web XML.
El consumo de servicios Web XML casi no presenta variantes que dependan del tipo de
aplicación que lo consume.
Para disponer de manera programática de la funcionalidad de un método de servicio Web
XML, el procedimiento general es el siguiente:
1. Se debe tener desarrollado un servicio Web XML(.asmx).
2. Se debe crear una clase para el servicio Web XML.
3. Se debe compilar la clase como librería, depositándola en el directorio bin del sitio,
o en el directorio bin de raíz de Web.
4. En el código del programa que consume el servicio Web XML deberá crearse una
instancia de la clase.
5. Se deberá invocar el método del servicio Web XMl a través de la instancia de la
clase que se ha instanciado.
6. Se deberá hacer un llamado al método de servicio Web XML que desea utilizar.
7. Se utiliza el resultado retornado por el servicio.
La clase trabaja con el protocolo SOAP, que permite una estructura XML, más estructurada
que HTTP, por lo que es posible recibir del servicio Web XML un objeto complejo, como
lo es DataSet.
Un ejemplo de un servicio Web sería el siguiente:
Se crea un proyecto de tipo ASP.NET Web Service y le asigna el nombre Ejemplo.
Dentro del proyecto se agrega un Web Service y se le asigna el nombre Aritmetica.asmx, a
continuación se genera un archivo con una clase llamada Aritmetica y a esta se le agregan
los métodos Suma, Multiplicación y Division.
.
4. Individual
Investigar:
Servicios WEB
Como se manejan en:
.Java (Servidor Consumo)
.Perl (Servidor Consumo)
.Php (Servidor Consumo)
.Google-(Consumo y lista de servicios web)
->Direccion en donde hoy se encuentra el servicio web como se hace el consumo, y la lista
de los distintos servicios web (maps, clima, busqueda,etc.)
5 Cuartillas PDF
Para Complementar La Ultima Unidad
(F-Entrega... 30 Mayo->Slideshare->Correo)