同様の問題に関連する既存の異なるSOの質問を検索しましたが、私の問題に関連するものは何も見つかりませんでした。"405メソッドが許可されていません" - ASP.NET jQueryを使用する場合ajax POST
私は、次のjQueryコードを持っている:
$.ajax({
url: "Index.aspx/DeclineRequest"
, type: 'POST'
, contentType: 'application/json; charset=utf-8'
, dataType: 'json'
, data: JSON.stringify({ RequestId: requestId })
});
私は別のASP.NET WebアプリケーションにデータをPOSTするために非常によく似た手法を使用していて、これが正常に動作します。しかし、このアプリケーションは以下のエラーを返して:
"NetworkError: 405 Method Not Allowed - http://localhost:57255/ ....."
私は、これらの2つのアプリケーションについて異なる何かを見つけることができませんので、私はこれが動作しない理由として困惑しています。
私が考えることができるこれらの2つのアプリケーションのこの唯一の違いは、動作しているものが.NET 2.0であり、動作していないものが.NET 3.5です。
私は私のweb.config
に以下を追加しようとしましたが、私はまだ同じ405エラーを取得:
<webServices>
<protocols>
<add name="HttpPost"/>
<add name="HttpPostLocalhost"/>
</protocols>
</webServices>
どのように私はこの問題を解決することができますか?
UPDATE(16:40):私はこのアプリケーションをIISに移動しましたが、405エラーは返されなくなりました。私たちの開発環境はlocalhostだけです。なぜこれはローカルホスト上でのみエラーでしょうか?
あなたは私たちyour'e 'DeclineRequest'方法を示しすることはできますか? –
http://stackoverflow.com/questions/7430492/twitter-search-api-networkerror-405-method-not-allowedに似ていますか? –
@ŁukaszW.pl 'DeclineRequest'メソッドは、単純に' return "Hello World"を呼び出しています。私はこれが問題であるとは思わないが、メソッド名をタイプすると同じエラーが返される。私は意図的にいくつかのテストでこのメソッドをミスピールしてこれを確認しました。 – Curt