От 4 Mvc действий:Json responseText пустой и его статуса как ошибка
[HttpPost]
public ActionResult DoStuff(string str)
{
// Do some things
Response.ContentType = "application/json;charset=utf-8";
Response.StatusCode = someCondition == true ? HttpStatusCode.OK : HttpStatusCode.NotFound);
Response.TrySkipIisCustomErrors = true;
return Json(
new {
object1 = 1,
object2 = someArray[0],
object3 = someArray[1],
object4 = someValue == 4 ? 1 : 0
}
);
}
В JQuery Ajax:
ajax({
url: '/Ctrler/DoStuff/',
data: { str: someString },
type: 'POST',
dataType: 'json'
}).then(function (data) {
var _response = $.parseJSON(data);
}, function (data) {
var _response = $.parseJSON(data.responseText);
});
data.responseText пуст ("") и является его статусом "ошибкой". Это не всегда происходит. Я заметил, что это происходит случайным образом. Зачем?
Ничего не происходит случайным образом :) Если вы получаете ошибки из запроса, проверьте консоль. Произошла ошибка на стороне сервера. –
@RoryMcCrossan Я поймал ошибку в вызове ajax с помощью try-catch, и он говорит о синтаксической ошибке в результате попытки разобрать json, ответ responseText пуст, а statusText - ошибка. Если ничего случайного не происходит, потому что выполнение одного и того же действия в контроллере x раз, много раз работает, а затем есть тот, который терпит неудачу? – user1624552
@RoryMcCrossan console говорит: SCRIPT7002: XMLHttpRequest: ошибка сети 0x2ee2, не удалось завершить операцию из-за ошибки 00002ee2. – user1624552