【问题标题】:How to suppress javascript errors when xmlhttp.status != 200当 xmlhttp.status != 200 时如何抑制 javascript 错误
【发布时间】:2013-03-15 02:31:17
【问题描述】:

在我的谷歌浏览器控制台中,当 xmlhttp 状态没有导致 200 时,我不断收到错误。例如,在某些情况下,我故意将我的 PHP 文件的标题设置为 500,因此在 javascript 中我可以显示错误并避免任何事情这需要那个 PHP 文件。由于我有自己的错误处理程序,是否有抑制默认错误的方法?

错误示例:

POST http://localhost/mama/cgi-bin/pages/Module-Install.php 500 (Internal server error) 

【问题讨论】:

标签: javascript xmlhttprequest


【解决方案1】:

在自己处理错误时,似乎无法在 google chrome 中抑制这些警告。对于任何正在寻找替代解决方案的人,请将错误代码嵌入到 json 对象中,并在 json 对象客户端解析任何错误。

【讨论】:

    【解决方案2】:

    这个错误是由服务器端发送的,不是浏览器,不是 js。你不能只是从控制台“隐藏”它。你可以在onerror事件中处理:

    request.onerror = function (e) {
       // do something to fix the results of server error...
    };
    

    换句话说,这是一个服务器错误,它可能会破坏您的代码执行,但是如果您在 xmlHttp 类可能出现异常后采取几个步骤来恢复工作,那么代码就可以了。

    UPD:

    如果你是纯粹的完美主义者,并且你关心完美的环境:

    服务器端,您必须在不触发除 200 之外的任何状态的情况下实现服务器应答。这不是一项超级难的工作。 对于 ASP:Suppressing HTTP 500 response codes; 对于 PHP:http://php.net/manual/en/function.http-response-code.php

    【讨论】:

    • 我已经说过我已经设置了自己的错误处理程序,这就是我想在控制台中抑制谷歌浏览器错误消息的全部原因。
    • 太棒了!所以这是问题的正确答案,不是吗?
    • 否,因为执行此操作时控制台中仍会出现错误。
    猜你喜欢
    • 2011-10-30
    • 2011-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-11
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    相关资源
    最近更新 更多