我正在使用ASP.NET WebApi來構建我的REST服務。在很多情況下,我只需要返回一個200 OK消息(沒有內容)。該反應通常看起來像(這是一個POST):jQuery 2.0 + ASP.NET WebApi POST空響應=失敗
return this.Request.CreateResponse(HttpStatusCode.OK);
或
return new HttpResponseMessage(HttpStatusCode.OK);
無論是在jQuery的1.8效果不錯,但那是因爲該版本允許的「」一個responseText的使用(它然後嘗試運行parseJSON)。
然而,在jQuery的2.0,它在deferred.fail()回調結束,而不是,因爲它認爲,一個失敗parseJSON(對空文本)無效..
如何解決這個問題?
UPDATE
使用該例JS調用:
var deferred = $.ajax({
"type": "POST",
"url": something,
"contentType": "application/json; charset=utf-8",
"dataType": "json",
"data": JSON.stringify(whatever)
});
deferred.fail(function (msg) {
// it ends up in here
});
通話可能導致JSON響應,但往往只需要返回200 OK,沒有身體,這是爲什麼我仍然指定dataType/contentType(事先沒有辦法知道它是否具有body,服務器有邏輯決定)。
您可以添加$就調用的例子? –
好的,我添加了JS ajax調用示例 – automaton