我已經搜索了與類似問題有關的不同現有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應用程序的數據,這工作得很好。然而,這個應用程序返回以下錯誤:
"NetworkError: 405 Method Not Allowed - http://localhost:57255/ ....."
我無法找到任何有關這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上出現這個錯誤?
你能告訴我們傻冒'DeclineRequest'方法? – 2012-04-19 12:01:11
它是不是類似於http://stackoverflow.com/questions/7430492/twitter-search-api-networkerror-405-method-not-allowed ?? – 2012-04-19 12:01:37
@ŁukaszW.pl'DeclineRequest'方法現在簡單地調用'return「Hello World」''。我不認爲這是問題,因爲輸入任何方法名稱都會返回相同的錯誤。我在一些測試中故意錯誤地檢查了這個方法。 – Curt 2012-04-19 12:58:59