HTTP POST / GETリクエストに対してASP.NET ASMX Webサービスを有効にする

StackOverflow https://stackoverflow.com/questions/618900

  •  03-07-2019
  •  | 
  •  

質問

HTTP POSTおよびGET要求に対してASP.NETクラシック(ASMX)Webサービスを有効にしたいと思います。これを追加するには、マシンレベルまたはアプリケーションレベルで行うことができます...

<webServices>
    <protocols>
        <add name="HttpGet"/>
        <add name="HttpPost"/>
    </protocols>
</webServices>

.. machine.configまたはweb.configに。私の質問は、HTTP POSTおよびGETリクエストを、アプリケーションまたはマシンごとではなく、WebサービスまたはWebメソッドレベルごとに有効にできますか?

私のウェブサービスは、net 3.5sp1を使用してC#で記述されています。

役に立ちましたか?

解決

メソッドに対してUseHttpGetを宣言してみてください。

[ScriptMethod(UseHttpGet = true)]
public string HelloWorld()
{
    return "Hello World";
}

他のヒント

実は、これをやや風変わりな方法で見つけました。 プロトコルをweb.configに追加しますが、location要素内に追加します。次のように、Webサービスの場所をパス属性として指定します。

<location path="YourWebservice.asmx">
  <system.web>
    <webServices>
      <protocols>
        <add name="HttpGet"/>
        <add name="HttpPost"/>
      </protocols>
    </webServices>
  </system.web>
</location>
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top