WEB SERVICES TUTORIAL. Tutorial completo para poder crear y utilizar Web Services con las configuraciones más usadas de forma profesional.



Documentos relacionados
Un poco de culturilla...1 Crear un servicio Web...1 Usar servicios web...6

Desarrollo y servicios web

Servicios Web. Andrés Pastorini. TRIA Tecnólogo Informático

WEB SERVICES. Manual técnico para desarrollador

.NET Framework 3.5 Visual Studio Express 2008 Tabla 1 Requerimientos de Software

Tutorial Servicios Web

Componentes de una aplicación ASP.NET

WEB SERVICE FACTORUMCFDISERVICE

Generador de Proxy remoto JavaScript.

CREAR UN SERVICIO WEB BASICO CON JAVA AXIS2. Víctor J. Sosa

Visión general Infraestructura Desarrollo de un servicio Web Invocación de un servicio Web Bibliografía

GALA. Servicios WEB. Curso ASP.NET Desarrollo de Sitios y Servicios Web con Visual Basic 2010, 24 h. L25. Servicios Web en Integración

Cursos de Extensión Universitaria UNIVERSIDAD DE OVIEDO. Servicios Web (II)

Banco de la República Bogotá D. C., Colombia

Manual del Protocolo XML-RPC de Mensajería Negocios

Modelo de Objetos Distribuidos

Controles en ASP.NET

2. Se indica el nombre y las configuraciones necesarias para la creación del proyecto

Programación de red con Cisco Application Centric Infrastructure

PRUEBAS FUNCIONALES Y DE ACEPTACIÓN

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

Guia rápida EPlus Cliente-Servidor

Elastix Web Services (WSDL) Manual de Usuario

Sistemas Operativos Distribuidos. Introducción a los Servicios Web (Web Services)

2524 Developing XML Web Services Using Microsoft ASP.NET

Universidad ORT - Arquitecturas de Software sobre plataforma JEE Web Services (parte 1)

ANEXO 1. ANEXO TÉCNICO

PORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto

Configuración de Aspel-SAE 6.0 para trabajar Remotamente

SISTEMAS DE INFORMACIÓN III TEORÍA

Servicios Web con.net

TUTORIAL APLICACIONES EVOLUTION CON ACTIVEX EVOLINK

Fuzion Media Asset Manager

Aplicaciones y Servicios Web (Web Services)

6.- Este software se instalara como una versión Demo con una duración de 25 días de uso. En el código de validación, se dejara la palabra Demo.

Especificación WebService para:

Ejemplo de mono INSTALACION DE MONO EN UBUNTU

Iniciar flujo a partir de un archivo XML

Instructivo para la sincronización de servidores Intellect

Configuración de Aspel-SAE 6.0 para trabajar Remotamente

INTRANET: MANUAL DE INSTALACIÓN

Tema 18. Servicios Web.

Video 2: Cómo Crear una plantilla para Generar Procedimientos Almacenados

JavaScript como Orientación a Objetos

PLATAFORMA DE CORREO. Guía Inicial de utilización del correo electrónico. ::Google APPS::

Célula UABC-Live.net. Universidad Autónoma. de Baja California. Facultad de Ciencias Químicas.

Quieres diseñar una página web y no sabes por dónde empezar? Puedes decantarte por utilizar Visual Web Developer.

Manual de instalación, configuración y uso de la aplicación Softphone de Twingo para PC

WEB SERVICES CREACIÓN DEL SERVICIO

JAVA EE 5. Arquitectura, conceptos y ejemplos.

MANUAL DE SHAREPOINT Por: Área de Administración de Aplicaciones.

Tabla de contenido. 1. Objetivo Asignación de responsabilidades Alcance Procedimientos relacionados...4

Modulo conexión Cliente WS DGI

How to Crear Servidor Samba

Guía rápida para la configuración del Usuario Único

PUCV - Pontificia Universidad Católica de Valparaíso

Luis Eduardo Peralta Molina Sistemas Operativos Instructor: José Doñe Como crear un Servidor DHCP en ClearOS

TEMA: DESARROLLO DE APLICACIONES WEB INTERACTIVAS UTILIZANDO LA TÉCNICA AJAX AUTOR: MERY SUSANA ZAMBONINO BAUTISTA

Guía para la configuración de Mail de Mac para la plataforma de Gmail Contenido

Introducción a la plataforma Moodle Aníbal de la Torre Plataforma Moodle. Accediendo a los contenidos

VPN DE MS WINDOWS 2003 CON AUTENTIFICACIÓN EAP, MEDIANTE CERTIFICADOS

Historia de revisiones

ABAP Proxy Objects Configuración del Entorno

Web Services - ReadingReportService Fecha: 29/04/2015. WEB Services ReadingReportService VERSIÓN 0.1. Autor: German Alfonso Briceño

MANUAL DE USUARIO FINAL MAPCEL PROFITS

Taller: Introducción a Windows Communication Foundation

Construir RIA usando Flex. Eduardo Ostertag Jenkins, Ph.D. OBCOM INGENIERIA S.A.

Guía de Inicio Rápido de NetGenie

Capítulo V. Implementación

Instalación Software Administrador de Videoclub

Guía de Instalación de Microsoft Outlook en Exchange

MANUAL DE CONFIGURACIÓN PARA ACCEDER A LA RED WIRELESS (FIEC-WIFI)

Introducción a JAX-WS Web Services

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

CONFIGURACIÓN EN WINDOWS 7.

Manual de Integrador.NET

DESARROLLO DE UN CLIENTE SOFIA2 (KP) SIGUIENDO ARQUITECTURA KP-MODELO

Resumen. DESlock+ Guía Básica de Configuración. Requerimientos del Sistema:

Parte III. Características del proyecto. Web corporativa. Aplicación gestión. Comandas. Gestión cocina.

Análisis y diseño del sistema CAPÍTULO 3

Tutorial: Python + Soap Web Service. Daniel Montenegro Cordero

Requisitos técnicos para la instalación. Arquitectura Hardware Arquitectura Software. Instrucciones de instalación GONG-R

Manual de NetBeans y XAMPP

Servicio Web para el Timbrado y Cancelación (TimbraSí)

Configuración de Aspel-SAE 5.0 para trabajar Remotamente

Sistemas de seguridad en redes inalámbricas: WEP, WAP y WAP2

Documentación Técnica Conector

El lenguaje de programación Java

.NET Compact Framework

La obra se proporciona bajo los términos de esta licencia pública de Sisoft de México

GUIA DE LABORATORIO N 8 A(Netbeans-java,Glassfish)

Partes de un programa en Java. A. Ejemplo de un Programa en Java /* Programa Ejemplo de Java: Muestra una Ventana Archivo: Ejemplo1.

Instalación del Admin CFDI

CONFIGURACIÓN BÁSICA DE UNA VPN EN WINDOWS XP PROFESIONAL

Seguridad HTTP y servicios Web de ASP.NET

HOW TO SOBRE REMOTE ACCESS VPN MODE EN LINUX

Manual de configuración de la red inalámbrica. eduroam. en Microsoft Windows 7

5.1 Introducción a Servicios Web

HP iquote. Introducción

INSTRUCTIVO DE INSTALACIÓN Y REPARACIÓN DE SERVICIOS ADSL CON INTERFAZ WiFi

Transcripción:

WEB SERVICES TUTORIAL Tutorial completo para poder crear y utilizar Web Services con las configuraciones más usadas de forma profesional. 1/29/2013

INTRODUCCIÓN... II WEB SERVICES... II PRINCIPALES VENTAJAS... II SIMPLE OBJECT ACCESS PROTOCOL... II WEB SERVICES DESCRIPTION LANGUAGE... II PRACTICA 1... III CÓDIGO... III EXPLICACIÓN DE CÓDIGO... III WEB REFERENCE... IV CONCEPTO... IV PRACTICA 2... IV WEB REFERENCE... IV CÓDIGO... V EXPLICACIÓN DE CÓDIGO... V SERVICE REFERENCE... VII CONCEPTO... VII PRACTICA 3... VII SERVICE REFERENCE... VII CÓDIGO... VIII EXPLICACIÓN DE CÓDIGO... VIII PRACTICA 4... IX JQUERY... IX CÓDIGO JAVASCRIPT... IX CÓDIGO HTML... IX EXPLICACIÓN DE CÓDIGO... X PAGE METHODS... X CONCEPTO... X PRACTICA 5... X PAGE METHODS... X SEGURIDAD... XI TIPOS DE SEGURIDAD EN UN WEB SERVICE... XI PRACTICA 6... XI BASIC AUTHENTICATION... XI

INTRODUCCIÓN WEB SERVICES Permite publicar funcionalidad a otras aplicaciones Utiliza XML para codificar y decodificar los datos Utiliza SOAP para transportar los datos PRINCIPALES VENTAJAS Reutilizar aplicaciones Conectar aplicaciones ya existentes SIMPLE OBJECT ACCESS PROTOCOL Protocolo simple de acceso a objetos Diseñado para comunicarse a través de Internet Independiente de la plataforma Independiente del lenguaje Se basa en XML Simple y extensible WEB SERVICES DESCRIPTION LANGUAGE Lenguaje de descripción de servicios Web Lenguaje basado en XML para la localización y descripción de servicios Web. Se utiliza para describir servicios Web Se utiliza para localizar servicios Web II

PRACTICA 1 CÓDIGO A partir de un proyecto web se agrega un nuevo ítem de tipo Web Service, el código generado es el siguiente: [WebService( Namespace = "http://mx.neltic.practice.1/" )] [WebServiceBinding( ConformsTo = WsiProfiles.BasicProfile1_1 )] [System.Web.Script.Services.ScriptService] public class Practice : WebService { [WebMethod] public string Welcome( ) { return "Bienvenido al curso de Web Services"; } } EXPLICACIÓN DE CÓDIGO [WebService( Namespace = "http://mx.neltic.practice.1/" )] Permite definir el nombre con el que será identificado todo el Web Service, es importante que en un ambiente productivo no se repita este nombre y que no cambie entre modos de compilación (debug, release) ni de ambiente (desarrollo, calidad, producción) [WebServiceBinding( ConformsTo = WsiProfiles.BasicProfile1_1 )] Indica el perfil a usar, para mayor referencia consultar http://www.ws-i.org/profiles/basicprofile-1.1.html [System.Web.Script.Services.ScriptService] Permite utilizar el web service mediante una llamada tipo AJAX public class Practice : WebService Hereda de la clase Web Service toda la funcionalidad [WebMethod] Indica que este método se puede accesar mediante una instancia del web service III

WEB REFERENCE CONCEPTO PRACTICA 2 WEB REFERENCE Clase (intermediaria) generada localmente que representa la funcionalidad expuesta de un Web Service. La clase proxy define los métodos que representan los actuales métodos expuestos. Cuando la aplicación crea una instancia de la clase proxy, la aplicación puede llamar a los métodos del servicio como si el servicio fuera un componente local. Disponible directamente hasta la versión 2005, en adelante se ocupa Service Reference con la opción a ser compatible con Web Reference. Para agregar una referencia a un Web Service elegir la opción Add Service Reference Introducir el link de la practica 1 y buscar el documento WSDL (se puede introducir directamente el WSDL para una búsqueda mas rápida) IV

Ir a la opción Advanced y elegir en la sección compatibilidad Add Web Reference completar como en la imagen Ahora ya se puede realizar una instancia de la clase proxy. CÓDIGO using Practice2WS; public partial class WebReference : Page { protected void Page_Load( object sender, EventArgs e ) { Practice prcwsi = new Practice( ); lbltitle.text = prcwsi.welcome( ); lblpractice.text = prcwsi.getpractice( 2 ); lblmexicotime.text = DateTime.Now.ToString( "dd/mmm/yyyy HH:mm" ); lbljapantime.text = prcwsi.getjapantime( ).ToString( "dd/mmm/yyyy HH:mm" ); } } EXPLICACIÓN DE CÓDIGO using Practice2WS; Permite utilizar el Web Service como si fuera el Namespace de la clase. Practice prcwsi = new Practice( ); V

Crea una instancia de la clase proxy lbltitle.text = prcwsi.welcome( ); lblpractice.text = prcwsi.getpractice( 2 ); lbljapantime.text = prcwsi.getjapantime( ).ToString( "dd/mmm/yyyy HH:mm" ); Se utilizan los métodos expuestos por el Web Service VI

SERVICE REFERENCE CONCEPTO PRACTICA 3 SERVICE REFERENCE Clase (intermediaria) que representa la funcionalidad expuesta de un WCF-based Service; para referencia del uso de WCF visitar: http://msdn.microsoft.com/es-es/library/ms731082.aspx La clase proxy define los métodos que representan los actuales métodos expuestos. Cuando la aplicación crea una instancia de la clase proxy, la aplicación puede llamar a los métodos del servicio como si el servicio fuera un componente local. Para agregar una referencia a un Web Service elegir la opción Add Service Reference Introducir el link de la practica 1 y buscar el documento WSDL (se puede introducir directamente el WSDL para una búsqueda mas rápida) Ahora ya se puede realizar una instancia de la clase proxy. VII

CÓDIGO using mx.neltic.practice._3.practice3ws; class Program { static void Main( string[ ] args ) { PracticeSoapClient prcwsi = new PracticeSoapClient( ); Console.WriteLine( "Titilo:" + prcwsi.welcome( ) ); Console.WriteLine( "Practica:" + prcwsi.getpractice( 3 ) ); Console.WriteLine( "Horarios" ); Console.WriteLine( "Ciudad de México:" + DateTime.Now.ToString( "dd/mmm/yyyy HH:mm tt" ) ); Console.WriteLine( "Tokio:" + prcwsi.getjapantime( ).ToString( "dd/mmm/yyyy HH:mm tt" ) ); Console.WriteLine( "Teclea para finalizar..." ); Console.ReadKey( ); } } EXPLICACIÓN DE CÓDIGO using mx.neltic.practice._3.practice3ws; Permite utilizar el Web Service como si fuera el Namespace de la clase. PracticeSoapClient prcwsi = new PracticeSoapClient( ); Crea una instancia de la clase proxy, la diferencia con una instancia mediante Web Reference es que aquí la clase indica que su método de comunicación será SOAP y que se utilizara como cliente. Console.WriteLine( "Titilo:" + prcwsi.welcome( ) ); Console.WriteLine( "Practica:" + prcwsi.getpractice( 3 ) ); Console.WriteLine( "Tokio:" + prcwsi.getjapantime( ).ToString( "dd/mmm/yyyy HH:mm tt" ) ); Se utilizan los métodos expuestos por el Web Service de forma normal. VIII

PRACTICA 4 JQUERY La llamada a un Web Service se hace mediante una petición POST y el servidor debe soportar la salida mediante JSON, a partir de IIS 7 esto está por default, para versiones anteriores hay que realizar una función JavaScript o api especial para poder usar los Web Services correctamente. CÓDIGO JAVASCRIPT $(function () { var wspath = "http://localhost/mx.neltic.practice.1/practice.asmx/"; $.WebMethod(wspath + "Welcome", function (data) { $("#title").html(data); }); $.WebMethod(wspath + "GetPractice", "{'number':4}", function (data) { $("#practice").html(data); }); $("#mexico-time").html((new Date()).format("dd/mmm/yyyy HH:HH tt")); $.WebMethod(wspath + "GetJapanTime", function (data) { $("#japan-time").html(parsedate(data).format("dd/mmm/yyyy HH:HH tt")); }); CÓDIGO HTML }); <h1 id="title"></h1> <h2 id="practice"></h2> Horarios:<br /> Ciudad de México: <span id="mexico-time"></span> <br /> Tokio: <span id="japan-time"></span> <br /> IX

EXPLICACIÓN DE CÓDIGO var wspath = "http://localhost/mx.neltic.practice.1/practice.asmx/"; $.WebMethod(wspath + "Welcome", function (data) { $("#title").html(data); }); Se manda llamar un método del Web Service mediante una llamada POST, el dato regresado se puede asignar directamente a un elemento HTML. PAGE METHODS CONCEPTO PRACTICA 5 PAGE METHODS Se utilizan para llamar código que se resuelve en el servidor del lado del cliente. Son métodos estáticos, públicos y están identificados con el atributo [WebMethod]. Su mayor ventaja es solicitar solo fragmentos de código al servidor para permitir la interacción con el cliente. Su definición se puede realizar en el código de la misma página que realiza la interacción con el cliente. La llamada a un Page Method se hace mediante una petición POST y el servidor debe soportar la salida mediante JSON. Su definición se realiza en Code Behind y debe ser publica y estática. Utilizar código de la practica 1 y la 4 para completar el ejercicio. X

SEGURIDAD TIPOS DE SEGURIDAD EN UN WEB SERVICE Existen diferentes tipos de configuración para colocar seguridad en un Web Service, los más utilizados son: Basic/Digest: Permite solicitar usuario y contraseña para poder consumir el servicio Certificado: Permite consumir los métodos de un servicio siempre y cuando tenga el certificado correcto. PRACTICA 6 BASIC AUTHENTICATION Configurar el sitio de la practica 1 de forma que solo acepte peticiones mediante Basic Authentication Para poder consumir los datos mediante un Service Reference solo es necesario colocar las credenciales correctas antes de invocar cualquier método: PracticeSoapClient prcwsi = new PracticeSoapClient( ); prcwsi.clientcredentials.username.username = @"username"; prcwsi.clientcredentials.username.password = @"password"; XI