如何检查No' Access-Control-Allow-Origin'标题错误

时间:2016-02-20 21:07:39

标签: javascript xmlhttprequest

在JavaScript中使用XMLHttpRequest时,是否可以区分以下两个错误(GET完全失败/ No' Access-Control-Allow-Origin'标题)?

error log

显然,XMLHttpRequest对象的readyState和status不会有所不同。我试图使用window.onerror来捕获所有错误,但显然,这两个错误不会触发回调函数。

1 个答案:

答案 0 :(得分:0)

您最好的行动方案是防止此错误发生在首位。通过确保服务器将您尝试从脚本访问的域添加到Access-Control-Allow-Origin设置,您无需在客户端处理它。

也就是说,您应该能够将处理程序附加到XMLHttpRequest对象的错误事件。使用错误消息,您可以确定出错了什么;但这没什么兴趣。客户端出了什么问题并不重要,只是它不会得到它的数据,所以你可以做出相应的计划。

var oReq = new XMLHttpRequest();

oReq.addEventListener("error", transferFailed);

oReq.open();

function transferFailed(evt) {
  console.log("An error occurred while transferring the file.");
}

更多信息:https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest#Asynchronous_request