使用XMLHttpRequest抑制控制台错误

时间:2014-04-28 17:36:10

标签: javascript ajax xmlhttprequest http-status-code-404

我试图写一个" fileExists" Javascript中的函数只是向服务器发送请求,如果发回404状态则返回false。

该功能运作正常,但我似乎无法取消我在Google Chrome控制台中收到的错误消息:GET /something/foobar 404 (Not Found)

有没有人知道解决这个问题的方法?

供参考,以下是我使用的代码:

    var fileExists = function(url) {
        var req = new XMLHttpRequest();
        req.open('GET', url, false);
        req.send();
        return req.status === 200;
    };

提前致谢!

1 个答案:

答案 0 :(得分:5)

我认为没有办法阻止控制台声明加载资源失败。实际上并没有错。

然而,您可以更好地使用HEAD请求,而不是使用GET真正加载ressource。尝试

function fileExists(url) {
    var req = new XMLHttpRequest();
    req.open('HEAD', url, false);
    req.send();
    return req.status !== 404;
}

如果您确实想避免使用404状态,请在服务器上安装一个服务,以查询文件/路径是否可用。它始终返回具有200 OK状态的XML / JSON /文本响应,无论其包含true还是false