Por que a chamada $ .ajax para dados json aciona o retorno de chamada de erro quando o código de status http é “200 OK”?
Eu tenho o seguinte pedido de ajax:
jQuery.ajax({
async: true,
type: "GET",
url: url,
data: data,
dataType: "json",
success: function(results){
currentData = results;
},
error: function(xhr, ajaxOptions, thrownError){
if (xhr.status == 200) {
console.debug("Error code 200");
}
else {
currentData = {};
displayAjaxError(xhr.status);
}
}
});
Por alguma razão, o retorno de chamada de erro é chamado de evento, embora o código de status http seja de 200 ie. o pedido está OK. Por que é isso?