Abilitare il servizio Web ASP.NET ASMX per le richieste HTTP POST / GET
-
03-07-2019 - |
Domanda
Vorrei abilitare un servizio Web ASP.NET classico (ASMX) per le richieste HTTP POST e GET. Mi rendo conto che questo può essere fatto a livello di macchina o applicazione aggiungendo ...
<webServices>
<protocols>
<add name="HttpGet"/>
<add name="HttpPost"/>
</protocols>
</webServices>
.. su machine.config o web.config. La mia domanda è: è possibile abilitare le richieste HTTP POST e GET per servizio Web o livello di metodo Web anziché per applicazione o macchina?
Il mio servizio web è scritto in c # usando net 3.5sp1.
Soluzione
Prova a dichiarare UseHttpGet sul tuo metodo.
[ScriptMethod(UseHttpGet = true)]
public string HelloWorld()
{
return "Hello World";
}
Altri suggerimenti
In realtà, ho trovato un modo un po 'bizzarro per farlo. Aggiungi il protocollo a web.config, ma all'interno di un elemento location. Specifica la posizione del servizio web come attributo path, in questo modo:
<location path="YourWebservice.asmx">
<system.web>
<webServices>
<protocols>
<add name="HttpGet"/>
<add name="HttpPost"/>
</protocols>
</webServices>
</system.web>
</location>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow