Compartir a través de


Localizar servicios web

Actualización: noviembre 2007

Hay ocasiones en las que se actúa como proveedor y como consumidor de un servicio web. En este caso, posiblemente se conozca la ubicación y función del servicio web. En otras ocasiones, posiblemente se tenga acceso a un servicio web proporcionado por un tercero. Cuando éste es el caso, posiblemente hasta se desconozca si de hecho existe algún servicio web que se adapte a sus necesidades.

   Referencias Web

Para simplificar el modelo de codificación, las aplicaciones escritas en código administrado utilizan una referencia web para representar de forma local cada servicio web. Las referencias Web se insertan en el proyecto a través del cuadro de diálogo Agregar referencia Web. Este cuadro de diálogo permite explorar el servidor local, el directorio de Microsoft UDDI e Internet en general. Los proveedores de servicios web publican sus servicios web en los directorios de servicios web, que es donde los consumidores de estos servicios buscan los servicios web que desean consumir. Para obtener más información, vea Directorios de servicios web XML.

El cuadro de diálogo Agregar referencia web utiliza el proceso de detección de servicios web para encontrar servicios web válidos en los sitios web por los que se navega desde el cuadro de diálogo. Con una determinada dirección, interrogará al sitio web utilizando un algoritmo diseñado para ubicar los documentos de descripción de servicio web que se ajusten a la gramática del Lenguaje de descripción de servicios web (WSDL). Para obtener más información, vea Descubrimiento de servicios web XML y Descripción del servicio web XML.

Una vez localizado un servicio web al que tenga acceso la aplicación a través del cuadro de diálogo Agregar referencia web, al hacer clic en el botón Agregar referencia, Visual Studio descargará la descripción del servicio en el equipo local y generará una clase de proxy para el servicio web elegido. La clase de proxy incluirá los métodos para llamar tanto sincrónica o asincrónicamente a cada método de servicio web expuesto. Esta clase figura en el archivo de código subyacente local del archivo .wsdl. Para obtener más información, vea Referencias web en Visual Studio y Agregar referencia Web (Cuadro de diálogo).

Puede utilizar la propiedad Dirección URL de referencia web para especificar la dirección URL del servicio web. De manera predeterminada, el cuadro de diálogo Agregar referencia web establece esta propiedad en la dirección URL del servicio web seleccionado, que es una dirección URL estática. Una referencia Web puede utilizar una dirección URL estática o dinámica.

Si se deja el Comportamiento de dirección URL establecido en el valor predeterminado de estático, la clase de proxy establece la propiedad de dirección URL en una dirección URL incluida en el código cuando se crea una instancia de la clase.

Si establece la propiedad Comportamiento de dirección URL de una referencia Web en Dynamic, la aplicación obtendrá la dirección URL en tiempo de ejecución del Elemento appSettings (Esquema de configuración general) del archivo de configuración de la aplicación. Cuando se especifica una dirección URL dinámica después de agregar una referencia Web, Visual Studio actualiza la clase de proxy para obtener la dirección URL del archivo de configuración.

<appSettings>
   <add key="myApplication.myServer.Service1"
        value="http://myServer/myWebService/Service1.asmx"/>
</appSettings>

Cuando se crea una instancia de un objeto de proxy, también se puede configurar la propiedad Dirección URL del objeto en la aplicación.

Independientemente de la dirección URL que utilice el proxy, debe ser la de un servicio web conforme a WSDL que coincida con el utilizado al agregar la referencia web.

También se puede generar una clase de proxy utilizando una herramienta (Herramienta de Lenguaje de descripción de servicios web) que es similar a la que utiliza Visual Studio para crear una clase de proxy al agregar una referencia web. Esto es necesario cuando no se puede tener acceso al servicio web desde el equipo en el que se encuentra instalado Visual Studio, como sucede cuando el servicio web está ubicado en una red inaccesible al cliente hasta el momento de la ejecución. Más adelante el archivo generado por la herramienta se agrega manualmente al proyecto de aplicación. Para obtener más información, vea Cómo: Generar un proxy de servicio web.

Vea también

Conceptos

Generar clientes de servicios web XML

Descripción del servicio web XML

Otros recursos

Obtener acceso a servicios web en código administrado