你如何处理一个“问题”;拒绝访问受限制的URI“;使用XMLHttpRequest时JavaScript出错?

你如何处理一个“问题”;拒绝访问受限制的URI“;使用XMLHttpRequest时JavaScript出错?,javascript,error-handling,xmlhttprequest,xmlhttprequest-level2,Javascript,Error Handling,Xmlhttprequest,Xmlhttprequest Level2,我有以下代码: var req = new XMLHttpRequest(); req.onload = function(){ if (req.status === "200"){ doSomethingWithTheReceivedData(); } else { alert("Error msg"); } }; 但是,当直接从我的计算机上运行index.html时(当服务器没有提供index.html时),我会在Firefo

我有以下代码:

var req = new XMLHttpRequest();
req.onload = function(){
    if (req.status === "200"){
        doSomethingWithTheReceivedData();
    }
    else {
        alert("Error msg");
    }
};
但是,当直接从我的计算机上运行index.html时(当服务器没有提供index.html时),我会在Firefox web控制台中看到“NS_ERROR_DOM_BAD_URI:Access to restricted URI denied”,因为脚本试图访问的相对路径在我的计算机上不可用(它在我的服务器上)。
现在我想正确地处理这个错误,因为当前当用户单击触发此代码的按钮时,什么都不会发生。我已经添加了状态代码检查,但这似乎不适用于处理此错误,我假设请求从未返回?那么我如何处理这样的错误呢?

在发送请求时使用try-catch:

try{
  req.send(null);
}catch(e){
 alert(e.message);
}

对*文件的XHR调用:\*协议受到限制。您需要在服务器上运行它。@TaoP.R。问题似乎是关于处理这些错误,而不是阻止它们,所以没有办法处理这个错误?因为此代码是我的应用程序中可选功能的一部分,仅当用户从服务器使用它时才起作用。用户也可以脱机使用该应用程序(只需下载包含所有必要文件的zip存档,除此可选功能外,它完全是客户端的)。因此,当用户脱机使用应用程序时,我想优雅地处理此错误。@Dr.Molle不幸的是,这也不起作用:(