我在这里需要一些建议或一些解释。我有一个jquery ajax调用,
$.ajax({ type: "GET", url: base_url+'/ajax/fetch/counts/', dataType: 'json', data: {}, error: function(xhr, error){ console.debug(xhr); console.debug(error); }, success: display_counts });
一切正常。我的success回调响应正确触发。但是,我注意到的是error,即使我的呼叫返回成功状态200,每次也会触发我的回调。在上面的error回调中,我看到该对象xhr.status是200。
success
error
xhr.status
谁能解释什么地方出了问题或这里发生了什么?error回调应该仅在我有404或非200响应时触发。我的假设正确吗?
谢谢。
错误回调将在http错误时调用,但 如果响应上的JSON解析失败 ,也会调用错误回调。如果响应代码为200,但是您仍然被抛出错误回调,可能会发生这种情况。