Lavoro spesso con i WebServices in Asp.Net e a volte capita di avere l’esigenza di doverli testare su una macchina remota.
La grande comodità di svilupparli con Visual Studio è la creazione automatica di file dall’estensione .asxm che, oltre a permettere l’accesso alla descrizione formale dell’iterfaccia (wsdl), implementano un’interfaccia web per il test di tutti i metodi pubblici.
Di default la possibilità di testarli è data solo attraverso un accesso locale, il tentativo di utilizzarli da remoto genera questo errore:

Test
The test form is only available for requests from the local machine.

Come renderlo accessibile anche dall’esterno?
Semplicemente aggiungendo queste righe al file web.config del WebService

<configuration><system.web> <webservices> <protocols> <add name=”HttpGet” /> <add name=”HttpPost” /> </protocols> </webservices></system.web></configuration>

6 commenti on Sia in Locale che in Remoto

  1. Krapa scrive:

    OOOOOOOOOOOOOOH :-)

  2. Gasfirane scrive:

    L’utilità fatta a post :)

  3. Dave scrive:

    5 min di visita ed ho già trovato 2 errori!!!
    E no Gigi così nn va!

    .asmx

    Comunque sia grazie per il suggerimento… ora tutto sta a vedere se funziona!!! :D

    Dave

  4. Dave scrive:

    Hehe i tag nn li prende…. che sfigato che sono!

    <configuration><system.web> <webServices> <protocols> <add name=”HttpGet” /> <add name=”HttpPost” /> </protocols> </webServices></system.web></configuration>

  5. pippo scrive:

    io ho provato ma non funziona lo stesso

  6. Gasfirane scrive:

    Strano …

    prova magari a modificare il file web.config in questo modo:

    <configuration>
    <system.web>
    <webServices>
    <protocols>
    <add name=”HttpGet”/>
    <add name=”HttpPost”/>
    </protocols>
    </webServices>
    </system.web>
    </configuration>

    Oppure per renderle globali a tutte le tue applicazioni modifica il file machine.config in questo modo

    <protocols>
    <add name=”HttpSoap”/>
    <add name=”HttpPost”/>
    <add name=”HttpGet”/>
    <add name=”HttpPostLocalhost”/>
    <!– Documentation enables the documentation/test pages –>
    <add name=”Documentation”/>
    </protocols>

Lascia un Commento