Cómo: Tener acceso a servicios web XML desde un explorador
Este tema es específico de una tecnología heredada. Ahora, los servicios Web XML y los clientes de servicios Web XML deben crearse con Windows Communication Foundation.
Después de publicar un servicio Web creado con ASP.NET, puede probar su funcionalidad utilizando un explorador para llamarlo o a través de HTTP-GET o de HTTP-POST. Abra su archivo .asmx en un explorador y, a continuación, haga clic en los hipervínculos a los métodos de servicio Web o obtenga acceso directo a los métodos individuales anexando una cadena de consulta a la dirección URL de .asmx.
Nota: |
---|
De forma predeterminada, un servicio Web creado utilizando ASP.NET puede admitir varios protocolos, incluso SOAP sobre Http e implementaciones de HTTP-GET y HTTP-POST donde en la respuesta no se devuelve ningún SOAP XML. |
Para probar un servicio Web en un explorador utilizando HTTP-GET
Implementar su servicio Web en un servidor web. Para obtener más información, vea Publicación e Implementación del servicio Web XML.
Tenga acceso a un explorador web y escriba la dirección URL para su servicio Web en la barra de direcciones, utilizando el formato siguiente:
https://servername/apppath/webservicename.asmx
Parte de la ruta de acceso Valor servername
El nombre del servidor en el que se implementó su servicio Web.
Apppath
El nombre de su directorio virtual y el resto de la ruta de acceso de la aplicación web.
webservicename.asmx
El nombre del archivo .asmx del servicio Web.
Por ejemplo, suponga que ha publicado un servicio Web denominado
StockServices
. Cuando se publica, la dirección URL base para este servicio es http://<servername>/apppath/StockServices.asmx. Podría probar este servicio escribiendo esta solicitud HTTP-GET en la barra de direcciones del explorador:http://<servername>/apppath/StockServices.asmx
El servidor, en respuesta a esta solicitud, muestra la página de descripción de HTML del servicio Web.
La página de descripción HTML del servicio Web le muestra todos los métodos de servicio Web admitidos por un servicio Web determinado. Vincúlelo al método de servicio Web deseado y escriba los parámetros necesarios para probar el método y ver la respuesta de XML.
Para probar directamente un método de servicio Web en un explorador utilizando HTTP-GET
Implementar su servicio Web en un servidor web. Para obtener más información, vea Publicación e Implementación del servicio Web XML.
Abra un explorador web y escriba la dirección URL de su método de servicio Web en la barra de direcciones utilizando el siguiente formato:
https://servername/vdir/webservicename.asmx/Methodname?parameter=value
Parámetro Valor servername
El nombre del servidor en el que se implementa su servicio Web.
Apppath
El nombre de su directorio virtual y el resto de la ruta de acceso de la aplicación web.
webservicename.asmx
El nombre del archivo .asmx del servicio Web.
Methodname
El nombre de un método público que es expuesto por su servicio Web. Si se deja en blanco, se muestra la página de descripción del servicio Web, haciendo una lista de cada método público disponible en el archivo .asmx. (Opcional)
parámetro
El nombre de parámetro adecuado y el valor para cualquier parámetro requerido por su método. Si se deja en blanco, se muestra la página de descripción del servicio Web, haciendo una lista de cada método público disponible en el archivo .asmx. (Opcional)
Nota: El nombre del método de servicio Web en esta sintaxis distingue entre mayúsculas y minúsculas, pero el servidor, proyecto y nombres del servicio Web no hacen esta distinción. Por ejemplo, suponga que el servicio Web
StockServices
del procedimiento anterior contiene un método de servicio Web llamadoGetQuote
; el método de servicio Web acepta un símbolo de valores bursátiles como un parámetro, devolviendo el precio como un número de punto flotante de precisión doble. Escribir la solicitud HTTP-GET siguiente en la barra de direcciones del explorador para probar este método:http://<servername>/apppath/StockServices.asmx/GetStockQuote?tickerName=MSFT
El servidor envía una respuesta que contiene un documento XML, que se muestra en el explorador. Para obtener el ejemplo
GetQuote
, el XML tiene el precio actual de las acciones que solicita. El resultado tendría el siguiente aspecto:<?xml version="1.0" ?>
<double>74.5</double>
Para probar un servicio Web en un explorador utilizando HTTP-POST
Implementar su servicio Web en un servidor web. Para obtener más información, vea Publicación e Implementación del servicio Web XML. Este procedimiento utiliza como un ejemplo el servicio Web siguiente, implementado como un archivo math.asmx que es accesible desde la raíz virtual del sitio https://www.contoso.com:
<%@ WebService Language="C#" Class="Math" %> using System.Web.Services; public class Math : WebService { [ WebMethod ] public int Add(int num1, int num2) { return num1+num2; } [ WebMethod ] public int Subtract(int num1, int num2) { return num1-num2; } }
<%@ WebService Language="VB" Class="Math" %> Imports System.Web.Services Public Class Math Inherits WebService <WebMethod> _ Public Function Add(num1 As Integer, num2 As Integer) As Integer Return num1 + num2 End Function <WebMethod> _ Public Function Subtract(num1 As Integer, num2 As Integer) As Integer Return num1 - num2 End Function End Class
Cree una página HTML con un formulario que tiene su atributo método establecido para post. Utilice el formato siguiente:
<form method=POST action='https://www.contoso.com/math.asmx/Subtract'> <input type="text" size="5" name='num1'\"></td> - <input type="text" size="5" name='num2'\"></td> = <input type=submit value="Subtract"> </td> </form>
Parámetro Valor Método
POST. Si desea probar su servicio Web mediante HTTP-POST, utilice POST.
acción
Dirección URL para el método de servicios Web. En el ejemplo anterior, math.asmx es el servicio Web y
Subtract
es el método de servicio Web.type="text"
Para cada parámetro del método de servicio Web, cree las etiquetas entrada con el atributo de tipo establecido en "text". Esto le permite escribir un valor de parámetro en el control de entrada de texto.
nombre= 'num1''
Nombre del parámetro del método de servicios Web. Agregue tantos controles de entradas de texto en el formulario como parámetros haya en el método de servicio Web. Por ejemplo, si un método de servicio Web tiene tres parámetros, se necesitan tres controles de entrada de texto y que cada uno tenga su conjunto de atributos de nombre establecido al nombre del parámetro.
type=submit
Agregue así un botón de envío que pueda devolver los datos al método de servicio Web.
Tenga acceso a un explorador web y escriba la dirección URL para el documento HTML que creó en el paso anterior.
Se muestra el documento HTML creado en el paso anterior.
Especifique los valores adecuados para el método de servicio Web en los cuadros de texto y haga clic en el botón de envío.
Por ejemplo, si escribió 6 y a continuación 3 en los dos cuadros de texto para el método de servicio Web
Subtract
del ejemplo, se devuelve el resultado siguiente:<?xml version="1.0" ?> <int xmlns="http://tempuri.org/">3</int>
Vea también
Tareas
Cómo: Explorar servicios web XML existente creados con ASP.NET
Cómo: Tener acceso a servicios web XML desde un explorador
Conceptos
Generar clientes de servicios web XML
Descubrimiento de servicios web