-1
我使用jQuery的與ASP.net MVC(後端不`噸真的很重要,我認爲)爲什麼AJAX請求成功,但它最終會失敗,再打
在JavaScript中,我有這樣一個
輔助函數postAsync: function (url, data) {
return $.ajax({
url: url,
data: JSON.stringify(data),
type: 'POST',
contentType: 'application/json; charset=utf-8',
dataType: 'json'
});
}
,當我要與服務器進行交互,我會做
postAsync("/mycontroler/methodname", {input: value}).done(function(){
// show success message
}).fail(function(err){
// show error message
});
然而
,我所有的Ajax請求始終處於「失敗」回調結束。 我期待進入「犯錯」的對象,我可以看到
status: 200
statusText: "OK"
但爲什麼它是錯誤的結束。我調試我的控制器,它就好!根本沒有例外。
有什麼想法嗎?
確定後端是給你正確的響應?可能是那裏的錯誤? – putvande
如果你的服務器不給你json,狀態實際上是200/OK,但jQuery不能解析json,所以它失敗。或者它可能是一個空的答案,自jQuery 1.9以來被認爲是無效的json內容:http://jquery.com/upgrade-guide/1.9/#jquery-ajax-returning-a-json-result-of-an-空串 – Zzirconium
將響應正文中收到的輸出粘貼到jsonlint.com並確保其驗證。 – charlietfl