Está en la página 1de 38

Desarrollo y consumo

de Servicios Webs
Desarrollo y consumo de
Servicios Web
Contenido:

 ¿Qué son los servicios Web?


Desarrollo y consumo de
Servicios Web
Contenido:

 ¿Qué son los servicios Web?


 Creación de un servicio Web
Desarrollo y consumo de
Servicios Web
Contenido:

 ¿Qué son los servicios Web?


 Creación de un servicio Web
 Localizar un servicio Web
Desarrollo y consumo de
Servicios Web
Contenido:

 ¿Qué son los servicios Web?


 Creación de un servicio Web
 Localizar un servicio Web
 Cómo usar un servicio Web desde…
 Una aplicación Web
 Una aplicación Windows (de escritorio)
Desarrollo y consumo de
Servicios Web
¿Qué son los servicios Web?:

 Definición:
 Son componentes que nos permiten crear
aplicaciones independientes de la plataforma.
 Se pueden usar servicios Web para integrar
aplicaciones escritas en lenguajes diferentes.
Desarrollo y consumo de
Servicios Web
¿Qué son los servicios Web?:

 Definición:
 Son componentes que nos permiten crear
aplicaciones independientes de la plataforma.
 Se pueden usar servicios Web para integrar
aplicaciones escritas en lenguajes diferentes.

 ¿Debo saber XML para crear servicios Web?


Desarrollo y consumo de
Servicios Web
Definiciones “técnicas”:

 XML: (eXtensible Markup Language)


 Estándar para describir la información que se intercambia
entre sistemas diferentes.
 SOAP: (Simple Object Access Protocol)
 Es una especificación que define el formato XML para
mensajes.
 WSDL: (Web Services Description Language)
 Un archivo WSDL es un documento XML que describe
mensajes SOAP y la forma en que se intercambian esos
mensajes.
Desarrollo y consumo de
Servicios Web
Creación de servicios Web:

 ¿Cómo crear servicios Web?


 Usando un editor de textos o WebMatrix
 Usando Visual Studio .NET
Ejemplo

“Hola, Mundo” al
estilo Web Service
paso a paso
Ejemplo:
HolaMundoWebS.asmx
 Usardirectivas ASP.NET para
indicar que es un servicio Web:
<%@ WebService
Ejemplo:
HolaMundoWebS.asmx
 Indicar
el lenguaje usado para el
código:
Language=“C#”
Ejemplo:
HolaMundoWebS.asmx
 Elnombre de la clase:
Class=“HolaMundoWebS”
Ejemplo:
HolaMundoWebS.asmx
 Cerrar la directiva ASP.NET:
%>
Ejemplo:
HolaMundoWebS.asmx
 Indicar el espacio de nombres:
using System.Web.Services;
Ejemplo:
HolaMundoWebS.asmx
 Declarar la clase:
public class HolaMundoWebS {
Ejemplo:
HolaMundoWebS.asmx
 Opcional,pero recomendado, usar el
atributo WebService:
[WebService(
Namespace="http://elGuille/")]
Ejemplo:
HolaMundoWebS.asmx
 Indicar la descripción de la clase:
[WebService(
Namespace="http://elGuille/",
Description="Hola, Mundo al
estilo Web Service")]
Ejemplo:
HolaMundoWebS.asmx
 Elatributo hay que indicarlo antes de
la declaración de la clase:
[WebService(
Namespace="http://elGuille/",
Description="Hola, Mundo al
estilo Web Service")]
public class HolaMundoWebS {
Ejemplo:
HolaMundoWebS.asmx
 Declararlos métodos, usando el
atributo WebMethod:
[WebMethod]
public string Saludar() {
return "Hola, Mundo";
}
Ejemplo:
HolaMundoWebS.asmx
 Enlos métodos también podemos
añadir una descripción:
[WebMethod(Description="Saluda
al Mundo")]
Ejemplo:
HolaMundoWebS.asmx
 Porsupuesto, podemos añadir
cuantos métodos queramos a la
clase; pero, si no llevan el atributo
WebMethod, no serán expuestos por
el servicio Web.
Ejemplo:
HolaMundoWebS.asmx

Veamos todo lo dicho en acción.


Ejemplo

Crear servicio Web con


Visual Studio .NET
Desarrollo y consumo de
Servicios Web
Hacer públicos los servicios Web:

 UDDI:
 Universal Description, Discovery and Integration
(Descripción, descubrimiento e integración
universales)
 UDDI permite dar a conocer los servicios Web
 Usar http://uddi.microsoft.com/ para publicar
nuestros servicios Web
Desarrollo y consumo de
Servicios Web
Consumo de servicios Web:

 ¿Cómo usar los servicios Web?


 Desde un cliente Web con ASP.NET (Web Form)
 Desde un cliente Windows
 Desde un cliente que “entienda” XML
Cliente Web (Formulario Web)
Internet Internet
Servidor Servidor
Explorador Web
Web

Formulario Servicio
Web Web
Cliente Windows
Internet
Servidor
Web
Aplicación de Windows

Servicio
Web
Desarrollo y consumo de
Servicios Web
Ejemplo de cliente Web:

 Creamos una aplicación Web (Web Form)


 Localizamos el servicio Web (UDDI o ‘a mano’)
 Creamos una referencia Web
 Usamos la clase del servicio Web como
cualquier otra clase
 Publicamos la aplicación Web
 La ‘consumimos’ desde el explorador
Ejemplo
Crear un cliente Web
Desarrollo y consumo de
Servicios Web
Ejemplo de cliente Windows:

 Creamos una aplicación Windows


 Localizamos el servicio Web (UDDI o ‘a mano’)
 Creamos una referencia Web
 Usamos la clase del servicio Web como
cualquier otra clase
 La ‘consumimos’ como cualquier otra
aplicación de escritorio
Ejemplo
Crear un cliente
Windows
Desarrollo y consumo de
Servicios Web
Ejemplo de cliente XML

 Creamos la aplicación
 En esta ocasión no existe una “clase”
 Usamos el código SOAP para enviar el valor y
recuperar el resultado
 La comunicación se hace mediante la clase
XMLHTTPRequest
El comando a enviar:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<CaF xmlns="elGuille">
<valor>double</valor>
</CaF>
</soap:Body>
</soap:Envelope>

oHttReq.open "POST", txtURL.Text, False


oHttReq.setRequestHeader "Content-Type", _
"text/xml; charset=utf-8"
oHttReq.setRequestHeader "SOAPAction", _
"elGuille/CaF"
El código XML recibido:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<CaFResponse xmlns="elGuille">
<CaFResult>double</CaFResult>
</CaFResponse>
</soap:Body>
</soap:Envelope>

Interpretar el resultado:
txtF.Text = _
XMLparser.selectSingleNode( _
"/soap:Envelope/soap:Body/CaFResponse/CaFResult"
).Text
Ejemplos
MSDN: El recurso para el desarrollador
www.microsoft.com/spanish/msdn

MSDN!Estudiantes:Recursos para los


estudiantes
www.microsoft.com/spanish/MSDN/estudiantes

Microsoft University Tour: Prácticas de las


charlas de hoy
www.microsoft.com/spanish/MSDN/estudiantes/e
ventos/universitytour.asp

http://guille.costasol.net/

http://vblibros.com/

También podría gustarte