【问题标题】:Check if server is running from Microsoft Edge检查服务器是否从 Microsoft Edge 运行
【发布时间】:2017-08-03 19:16:57
【问题描述】:

我正在使用以下代码来检查我的服务器是否正在运行:

<head>
    <script src="https://code.jquery.com/jquery-1.10.2.js"></script>
    <script>
        function checkServerStatus() {
            var img = document.createElement('img');
            img.onload = function() {
                alert('success');
            };
            img.onerror = function() {
                alert('error');
            };
            img.src = 'http://127.0.0.1:12345/images/test.png';
        }
        $(checkServerStatus);
    </script>
</head>

当我在服务器运行时运行此代码时,Chrome、FireFox 和 IE10 输出“成功”,而 MS Edge 输出“错误”。如何让 Edge 像其他服务器一样检测正在运行的服务器?

【问题讨论】:

  • 这取决于错误。使用img.onerror = function(err) { console.log(err); } 输出完整的错误消息(不仅仅是"error",这...不是很有用),然后告诉我们实际的错误是什么。
  • @JeremyThille - 我已经尝试过了,但参数似乎没有包含任何有用的信息,例如为什么图像无法加载。
  • err.message 应该是一条更有用的信息。此外,开发工具网络窗格应该给出某种原因或 HTTP 状态代码,应该可以揭示某种意义

标签: javascript jquery cross-browser microsoft-edge


【解决方案1】:

不要使用 Jquery。 :) 也许尝试使用一个专注于执行 XHR 请求的库:

https://github.com/mzabriskie/axios

【讨论】:

  • 你是对的...@jpen,为什么要使用它,而不是 checkServerStatus() ?为什么要包含 jQuery?
  • about:flags - 打开允许本地主机环回(这可能会使您的设备面临风险)。一些自定义主机文件映射可能需要额外的配置。有关更多信息,请参阅我们的常见问题解答。关闭并重新启动 Edge。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-21
  • 1970-01-01
  • 1970-01-01
  • 2021-08-14
  • 2012-04-09
  • 1970-01-01
相关资源
最近更新 更多