【问题标题】:WebSocket is closed due to suspension error on page reload由于页面重新加载时出现暂停错误,WebSocket 已关闭
【发布时间】:2018-01-31 05:59:50
【问题描述】:

我有一个按钮,它调用一个函数来重新加载页面:

function doReload() {
 window.location='/'
}

Safari 11 大约 5 次中有 1 次在控制台中抛出此错误:

WebSocket connection to 'ws://localhost:8080/sockjs-node/978/yzsndro2/websocket' failed: WebSocket is closed due to suspension.

我在后台运行一个 Webpack 2 开发服务器。

在 Chrome 中似乎没有发生。这是 High Sierra Beta,所以可能是一个错误。

建议或想法?

【问题讨论】:

  • 你有没有想过解决这个问题?
  • @thanksd - 我没有

标签: websocket safari webpack-dev-server macos-high-sierra


【解决方案1】:

我刚刚在 Safari 11 最新版本中看到了同样的消息。根据webKit代码:https://github.com/WebKit/webkit/blob/master/Source/WebCore/Modules/websockets/WebSocket.cpp#L505.

好像是浏览器在缓存网页的时候触发的,使得 DOMObjects 处于非活动状态。以下是解释该行为如何发生的错误报告:https://bugs.webkit.org/show_bug.cgi?id=143513

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多