Avete fatto un WebService ASP.NET, il client(e) che lo
devo usare, vuole usare ad ogni costo HTTP POST invece che HTTP SOAP.
In locale i webservices sono abilitati per ricevere chiamate sia HTTP SOAP
che HTTP POST, ma per le chiamate dall'esterno i webservices "ascoltano" solo
richieste SOAP.
Il mio amico Google mi ha portato ad una
pagina di MSDN che spiega come fare per configurare i protocolli accettati
da ASP.NET per le chiamate ai WebServices.
Come per tutte le opzione è configurabile sia a livello di macchina
(machine.confic) che per singola applicazione del web.config.
La configurazione dei web services sta dentro al blocco <system.web>,
racchiuso nel tag <webServices>.
<system.web>
...
<webServices>
<protocols>
<add name="HttpSoap"/>
<!-- <add name="HttpPost"/> -->
<!-- <add name="HttpGet"/> -->
<add name="Documentation"/>
<add name="HttpPostLocalhost"/>
</protocols>
</webServices>
...
</system.web>
Questa è la configurazione di default (i valori sono abbastanza
auto-esplicativi): basta quindi abilitare anche HttpPost nel machine.config per
permettere di connetersi a tutti i propri webservices via HttpPost, oppure basta
mettere solo <add name="HttpPost"/> nel
web.config dell'applicazione per la quale dev'essere abilitata.
powered by IMHO 1.3
posted @ venerdì 27 gennaio 2006 12:54