La manera habitual de consumir un webservice .NET es mediante el protocolo SOAP. Pero hay casos en los que implementar las llamadas en dicho protocolo puede resultar bastante costoso, como por ejemplo si queremos hacer la llamada directamente desde el cliente o desde una página ASP clásica (no .NET).
La solución es invocar el webservice usando HTTP GET y POST. En el framework 1.0 esta posibilidad estaba activa por defecto, pero a partir del 1.1 está deshabilitada por cuestiones de seguridad. Así que lo primero que hay que hacer es habilitar explícitamente esta posibilidad. En el webconfig del sitio donde resida el webservice hay que añadir lo siguiente dentro del nodo <system.web>:
<webServices>
<protocols>
<add name="HttpGet"/>
<add name="HttpPost"/>
</protocols>
</webServices>
Una vez realizado esto ya podemos comprobar que ya podemos invocar a nuestro webservice desde un navegador en cualquier cliente, tecleando la siguiente url:
http://servidor/nombreWebService.asmx/nombreMetodo?parametro1=valor1¶metro2=valor2(...)
Lo que nos aparecerá en el navegador es el chorro XML que nos devuelve el webservice.
Pues ya somos capaces de invocar a nuestro webservice usando HTTP GET y HTTP POST, pero eso lo explica mucho mejor que yo Juan Peláez en su blog.
(Gracias a Juan Carlos por el enlace)