I have the following ajax request:
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); } } });
For some reason the error callback is called event though the http status code is 200 ie. the request is OK. Why is this?
http://en.wikipedia.org/wiki/List_of_HTTP_status_codes
answer:
The problem might be that the json data returned from the url is malformed. When the server actually returns something,the http status code is 200. But that doesn't mean that the data is proper json. Check that the stringified json data returned is correctly formed
原文链接:https://www.f2er.com/ajax/165303.html