Expositor : Cruzado Paredes Naim Jhon
Desarrollo y consumo de Servicios Webs
Desarrollo y consumo de Servicios Web Contenido: <ul><li>¿Qué son los servicios Web? </li></ul>
Desarrollo y consumo de Servicios Web Contenido: <ul><li>¿Qué son los servicios Web? </li></ul><ul><li>Creación de un serv...
Desarrollo y consumo de Servicios Web Contenido: <ul><li>¿Qué son los servicios Web? </li></ul><ul><li>Creación de un serv...
Desarrollo y consumo de Servicios Web Contenido: <ul><li>¿Qué son los servicios Web? </li></ul><ul><li>Creación de un serv...
Desarrollo y consumo de Servicios Web  ¿Qué son los servicios Web?: <ul><li>Definición: </li></ul><ul><ul><li>Son componen...
Desarrollo y consumo de Servicios Web  ¿Qué son los servicios Web?: <ul><li>Definición: </li></ul><ul><ul><li>Son componen...
Desarrollo y consumo de Servicios Web  Definiciones “técnicas”: <ul><li>XML: (eXtensible Markup Language) </li></ul><ul><u...
Desarrollo y consumo de Servicios Web  Creación de servicios Web: <ul><li>¿Cómo crear servicios Web? </li></ul><ul><ul><li...
“ Hola, Mundo” al estilo  Web Service Ejemplo paso a paso
Ejemplo: HolaMundoWebS.asmx <ul><li>Usar directivas ASP.NET para indicar que es un servicio Web: </li></ul><ul><ul><li><%@...
Ejemplo: HolaMundoWebS.asmx <ul><li>Indicar el lenguaje usado para el código: </li></ul><ul><ul><li>Language=“C#” </li></u...
Ejemplo: HolaMundoWebS.asmx <ul><li>El nombre de la clase: </li></ul><ul><ul><li>Class=“HolaMundoWebS” </li></ul></ul>
Ejemplo: HolaMundoWebS.asmx <ul><li>Cerrar la directiva ASP.NET: </li></ul><ul><ul><li>%> </li></ul></ul>
Ejemplo: HolaMundoWebS.asmx <ul><li>Indicar el espacio de nombres: </li></ul><ul><ul><li>using System.Web.Services; </li><...
Ejemplo: HolaMundoWebS.asmx <ul><li>Declarar la clase: </li></ul><ul><ul><li>public class HolaMundoWebS { </li></ul></ul>
Ejemplo: HolaMundoWebS.asmx <ul><li>Opcional, pero recomendado, usar el atributo WebService: </li></ul><ul><ul><li>[WebSer...
Ejemplo: HolaMundoWebS.asmx <ul><li>Indicar la descripción de la clase: </li></ul><ul><ul><li>[WebService( </li></ul></ul>...
Ejemplo: HolaMundoWebS.asmx <ul><li>El atributo hay que indicarlo antes de la declaración de la clase: </li></ul><ul><ul><...
Ejemplo: HolaMundoWebS.asmx <ul><li>Declarar los métodos, usando el atributo WebMethod: </li></ul><ul><ul><li>[WebMethod] ...
Ejemplo: HolaMundoWebS.asmx <ul><li>En los métodos también podemos añadir una descripción: </li></ul><ul><ul><li>[WebMetho...
Ejemplo: HolaMundoWebS.asmx <ul><li>Por supuesto, podemos añadir cuantos métodos queramos a la clase; pero, si no llevan e...
Ejemplo: HolaMundoWebS.asmx <ul><li>Veamos todo lo dicho en acción. </li></ul>
Crear servicio Web con Visual Studio .NET Ejemplo
Desarrollo y consumo de Servicios Web  Hacer públicos los servicios Web: <ul><li>UDDI: </li></ul><ul><ul><li>Universal Des...
Desarrollo y consumo de Servicios Web  Consumo de servicios Web: <ul><li>¿Cómo usar los servicios Web? </li></ul><ul><ul><...
Cliente Web (Formulario Web) Explorador Servidor  Web Formulario Web Servicio Web Internet Internet Servidor  Web
Cliente Windows Aplicación de Windows Servidor  Web Servicio Web Internet
Desarrollo y consumo de Servicios Web  Ejemplo de cliente Web: <ul><li>Creamos una aplicación Web (Web Form) </li></ul><ul...
Crear un cliente Web Ejemplo
Desarrollo y consumo de Servicios Web  Ejemplo de cliente Windows: <ul><li>Creamos una aplicación Windows </li></ul><ul><l...
Crear un cliente Windows Ejemplo
Desarrollo y consumo de Servicios Web  Ejemplo de cliente XML  <ul><li>Creamos la aplicación </li></ul><ul><li>En esta oca...
<ul><li>El comando a enviar: </li></ul><ul><li><?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> </li></ul><ul><l...
<ul><li>El código XML recibido: </li></ul><ul><li><?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> </li></ul><ul...
Ejemplos
 
MSDN: El recurso para el desarrollador www.microsoft.com/spanish/msdn MSDN!Estudiantes:Recursos para los estudiantes www.m...
© 2001 Microsoft Corporation. All rights reserved.
Próxima SlideShare
Cargando en…5
×

Desarrollo y consumo de web services

27.105 visualizaciones

Publicado el

Desarrollo y consumo de web services SOA

Publicado en: Tecnología

Desarrollo y consumo de web services

  1. 1. Expositor : Cruzado Paredes Naim Jhon
  2. 2. Desarrollo y consumo de Servicios Webs
  3. 3. Desarrollo y consumo de Servicios Web Contenido: <ul><li>¿Qué son los servicios Web? </li></ul>
  4. 4. Desarrollo y consumo de Servicios Web Contenido: <ul><li>¿Qué son los servicios Web? </li></ul><ul><li>Creación de un servicio Web </li></ul>
  5. 5. Desarrollo y consumo de Servicios Web Contenido: <ul><li>¿Qué son los servicios Web? </li></ul><ul><li>Creación de un servicio Web </li></ul><ul><li>Localizar un servicio Web </li></ul>
  6. 6. Desarrollo y consumo de Servicios Web Contenido: <ul><li>¿Qué son los servicios Web? </li></ul><ul><li>Creación de un servicio Web </li></ul><ul><li>Localizar un servicio Web </li></ul><ul><li>Cómo usar un servicio Web desde… </li></ul><ul><ul><li>Una aplicación Web </li></ul></ul><ul><ul><li>Una aplicación Windows (de escritorio) </li></ul></ul>
  7. 7. Desarrollo y consumo de Servicios Web ¿Qué son los servicios Web?: <ul><li>Definición: </li></ul><ul><ul><li>Son componentes que nos permiten crear aplicaciones independientes de la plataforma. </li></ul></ul><ul><ul><li>Se pueden usar servicios Web para integrar aplicaciones escritas en lenguajes diferentes. </li></ul></ul>
  8. 8. Desarrollo y consumo de Servicios Web ¿Qué son los servicios Web?: <ul><li>Definición: </li></ul><ul><ul><li>Son componentes que nos permiten crear aplicaciones independientes de la plataforma. </li></ul></ul><ul><ul><li>Se pueden usar servicios Web para integrar aplicaciones escritas en lenguajes diferentes. </li></ul></ul><ul><li>¿Debo saber XML para crear servicios Web? </li></ul>
  9. 9. Desarrollo y consumo de Servicios Web Definiciones “técnicas”: <ul><li>XML: (eXtensible Markup Language) </li></ul><ul><ul><li>Estándar para describir la información que se intercambia entre sistemas diferentes. </li></ul></ul><ul><li>SOAP: (Simple Object Access Protocol) </li></ul><ul><ul><li>Es una especificación que define el formato XML para mensajes. </li></ul></ul><ul><li>WSDL: (Web Services Description Language) </li></ul><ul><ul><li>Un archivo WSDL es un documento XML que describe mensajes SOAP y la forma en que se intercambian esos mensajes. </li></ul></ul>
  10. 10. Desarrollo y consumo de Servicios Web Creación de servicios Web: <ul><li>¿Cómo crear servicios Web? </li></ul><ul><ul><li>Usando un editor de textos o WebMatrix </li></ul></ul><ul><ul><li>Usando Visual Studio .NET </li></ul></ul>
  11. 11. “ Hola, Mundo” al estilo Web Service Ejemplo paso a paso
  12. 12. Ejemplo: HolaMundoWebS.asmx <ul><li>Usar directivas ASP.NET para indicar que es un servicio Web: </li></ul><ul><ul><li><%@ WebService </li></ul></ul>
  13. 13. Ejemplo: HolaMundoWebS.asmx <ul><li>Indicar el lenguaje usado para el código: </li></ul><ul><ul><li>Language=“C#” </li></ul></ul>
  14. 14. Ejemplo: HolaMundoWebS.asmx <ul><li>El nombre de la clase: </li></ul><ul><ul><li>Class=“HolaMundoWebS” </li></ul></ul>
  15. 15. Ejemplo: HolaMundoWebS.asmx <ul><li>Cerrar la directiva ASP.NET: </li></ul><ul><ul><li>%> </li></ul></ul>
  16. 16. Ejemplo: HolaMundoWebS.asmx <ul><li>Indicar el espacio de nombres: </li></ul><ul><ul><li>using System.Web.Services; </li></ul></ul>
  17. 17. Ejemplo: HolaMundoWebS.asmx <ul><li>Declarar la clase: </li></ul><ul><ul><li>public class HolaMundoWebS { </li></ul></ul>
  18. 18. Ejemplo: HolaMundoWebS.asmx <ul><li>Opcional, pero recomendado, usar el atributo WebService: </li></ul><ul><ul><li>[WebService( </li></ul></ul><ul><ul><li>Namespace=&quot;http://elGuille/&quot;)] </li></ul></ul>
  19. 19. Ejemplo: HolaMundoWebS.asmx <ul><li>Indicar la descripción de la clase: </li></ul><ul><ul><li>[WebService( </li></ul></ul><ul><ul><li>Namespace=&quot;http://elGuille/&quot;, </li></ul></ul><ul><ul><li>Description=&quot;Hola, Mundo al estilo Web Service&quot;)] </li></ul></ul>
  20. 20. Ejemplo: HolaMundoWebS.asmx <ul><li>El atributo hay que indicarlo antes de la declaración de la clase: </li></ul><ul><ul><li>[WebService( Namespace=&quot;http://elGuille/&quot;, Description=&quot;Hola, Mundo al estilo Web Service&quot;)] </li></ul></ul><ul><ul><li>public class HolaMundoWebS { </li></ul></ul>
  21. 21. Ejemplo: HolaMundoWebS.asmx <ul><li>Declarar los métodos, usando el atributo WebMethod: </li></ul><ul><ul><li>[WebMethod] </li></ul></ul><ul><ul><li>public string Saludar() { </li></ul></ul><ul><ul><li>return &quot;Hola, Mundo&quot;; </li></ul></ul><ul><ul><li>} </li></ul></ul>
  22. 22. Ejemplo: HolaMundoWebS.asmx <ul><li>En los métodos también podemos añadir una descripción: </li></ul><ul><ul><li>[WebMethod(Description=&quot;Saluda al Mundo&quot;)] </li></ul></ul>
  23. 23. Ejemplo: HolaMundoWebS.asmx <ul><li>Por supuesto, 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. </li></ul>
  24. 24. Ejemplo: HolaMundoWebS.asmx <ul><li>Veamos todo lo dicho en acción. </li></ul>
  25. 25. Crear servicio Web con Visual Studio .NET Ejemplo
  26. 26. Desarrollo y consumo de Servicios Web Hacer públicos los servicios Web: <ul><li>UDDI: </li></ul><ul><ul><li>Universal Description, Discovery and Integration (Descripción, descubrimiento e integración universales) </li></ul></ul><ul><li>UDDI permite dar a conocer los servicios Web </li></ul><ul><li>Usar http://uddi.microsoft.com/ para publicar nuestros servicios Web </li></ul>
  27. 27. Desarrollo y consumo de Servicios Web Consumo de servicios Web: <ul><li>¿Cómo usar los servicios Web? </li></ul><ul><ul><li>Desde un cliente Web con ASP.NET (Web Form) </li></ul></ul><ul><ul><li>Desde un cliente Windows </li></ul></ul><ul><ul><li>Desde un cliente que “entienda” XML </li></ul></ul>
  28. 28. Cliente Web (Formulario Web) Explorador Servidor Web Formulario Web Servicio Web Internet Internet Servidor Web
  29. 29. Cliente Windows Aplicación de Windows Servidor Web Servicio Web Internet
  30. 30. Desarrollo y consumo de Servicios Web Ejemplo de cliente Web: <ul><li>Creamos una aplicación Web (Web Form) </li></ul><ul><li>Localizamos el servicio Web (UDDI o ‘a mano’) </li></ul><ul><li>Creamos una referencia Web </li></ul><ul><li>Usamos la clase del servicio Web como cualquier otra clase </li></ul><ul><li>Publicamos la aplicación Web </li></ul><ul><li>La ‘consumimos’ desde el explorador </li></ul>
  31. 31. Crear un cliente Web Ejemplo
  32. 32. Desarrollo y consumo de Servicios Web Ejemplo de cliente Windows: <ul><li>Creamos una aplicación Windows </li></ul><ul><li>Localizamos el servicio Web (UDDI o ‘a mano’) </li></ul><ul><li>Creamos una referencia Web </li></ul><ul><li>Usamos la clase del servicio Web como cualquier otra clase </li></ul><ul><li>La ‘consumimos’ como cualquier otra aplicación de escritorio </li></ul>
  33. 33. Crear un cliente Windows Ejemplo
  34. 34. Desarrollo y consumo de Servicios Web Ejemplo de cliente XML <ul><li>Creamos la aplicación </li></ul><ul><li>En esta ocasión no existe una “clase” </li></ul><ul><li>Usamos el código SOAP para enviar el valor y recuperar el resultado </li></ul><ul><li>La comunicación se hace mediante la clase XMLHTTPRequest </li></ul>
  35. 35. <ul><li>El comando a enviar: </li></ul><ul><li><?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> </li></ul><ul><li><soap:Envelope xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot; xmlns:soap=&quot;http://schemas.xmlsoap.org/soap/envelope/&quot;> </li></ul><ul><ul><li><soap:Body> </li></ul></ul><ul><ul><li><CaF xmlns=&quot;elGuille&quot;> </li></ul></ul><ul><ul><li><valor> double </valor> </li></ul></ul><ul><ul><li></CaF> </li></ul></ul><ul><ul><li></soap:Body> </li></ul></ul><ul><li></soap:Envelope> </li></ul><ul><li>oHttReq.open &quot;POST&quot;, txtURL.Text, False </li></ul><ul><li>oHttReq.setRequestHeader &quot;Content-Type&quot;, _ </li></ul><ul><li>&quot;text/xml; charset=utf-8&quot; </li></ul><ul><li>oHttReq.setRequestHeader &quot;SOAPAction&quot;, _ &quot;elGuille/CaF&quot; </li></ul>
  36. 36. <ul><li>El código XML recibido: </li></ul><ul><li><?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> </li></ul><ul><li><soap:Envelope xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot; xmlns:soap=&quot;http://schemas.xmlsoap.org/soap/envelope/&quot;> </li></ul><ul><li><soap:Body> </li></ul><ul><li><CaFResponse xmlns=&quot;elGuille&quot;> </li></ul><ul><li><CaFResult> double </CaFResult> </li></ul><ul><li></CaFResponse> </li></ul><ul><li></soap:Body> </li></ul><ul><li></soap:Envelope> </li></ul><ul><li>Interpretar el resultado: </li></ul><ul><li>txtF.Text = _ XMLparser.selectSingleNode( _ &quot;/soap:Envelope/soap:Body/CaFResponse/CaFResult&quot;).Text </li></ul>
  37. 37. Ejemplos
  38. 39. 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/eventos/universitytour.asp http://guille.costasol.net/ http://vblibros.com/
  39. 40. © 2001 Microsoft Corporation. All rights reserved.

×