【发布时间】:2012-09-14 09:45:19
【问题描述】:
刚开始使用 Firebase(BTW 很棒的概念),我注意到在 Chrome 控制台中它报告“WebSocket 在建立连接之前已关闭”
它仍然有效,但想知道为什么会发生这种情况 - 有什么需要担心的吗?
有趣的是,它确实表明 websocket 连接成功。
谢谢
【问题讨论】:
标签: firebase
刚开始使用 Firebase(BTW 很棒的概念),我注意到在 Chrome 控制台中它报告“WebSocket 在建立连接之前已关闭”
它仍然有效,但想知道为什么会发生这种情况 - 有什么需要担心的吗?
有趣的是,它确实表明 websocket 连接成功。
谢谢
【问题讨论】:
标签: firebase
这是一个已知问题。 Firebase 客户端尝试使用多种方法与 Firebase 服务器建立实时连接。如果其中一种方法在 Websocket 之前成功,我们将取消 Websocket,您会看到该警告。您可以放心地忽略该错误。
【讨论】:
我已经解决了这个问题好几个星期了,并且可以始终如一地重现它。有时我收到WebSocket is closed 警告,有时这是一个实际错误:
与“wss://s-usc1c-nss-214.firebaseio.com/.ws?v=5&ns=foo”的 WebSocket 连接失败:WebSocket 打开握手超时
有一个很长的支持电子邮件链。他们表示“像你的应用那样建立连接应该不会那么久”,并且“这似乎在谷歌网络之外,没有任何进一步的数据,这可能只是普通的互联网连接混乱。”
但我同意上面的@Xi Xiao,“冻结30秒不是一个合格的解决方案”。我已经created a GitHub Issue 详细说明了问题并提出了几个解决方案。
【讨论】:
这在我的赛普拉斯 e2e 测试中造成了不稳定。
作为临时解决方案,我必须按照Cypress docs 中的指定在赛普拉斯配置中将defaultCommandTimeout 设置为35000。
【讨论】: