【发布时间】:2019-05-13 15:55:08
【问题描述】:
我使用的是 Firefox Quantum (64.0),JS 命令 new WebSocket() 返回与规范不同的对象:
影响我的应用的缺失属性是.close() 函数,但还有其他区别。
您可以在下图中看到返回的对象有一个 .websocket 属性,其中包含所有缺失的属性。
websocket object
我做错了吗?使用旧版本的 Firefox(在 Quantum 之前,如 43)或使用 chrome 可以正常工作。
如果是 Firefox 的问题,我该如何报告?
编辑:
添加一些代码示例:
var exampleSocket = new WebSocket("wss://echo.websocket.org");
exampleSocket.close() // Throw "exampleSocket.close is not a function" in Firefox Quantum, works on chrome
exampleSocket.websocket.close() // Works on Firefox, Throw on chrome.
此exampleSocket.websocket 不在文档中。
编辑2: 我在其他具有 60、61、63 和 64 版本的 Firefox 的机器上进行了测试,问题只发生在我的机器上。 当我从 Firefox 中删除所有插件时,它又开始工作了。
【问题讨论】:
-
但是有一个
.close()方法;它就在原型对象上。如果有一些代码可以看,你的问题会更容易理解。 -
@Pointy 我添加了一个示例。要访问
.close(),我需要使用这个不应该存在的 websocket 属性。 -
嗯,Firefox 63.0.3 肯定不会那样做。
-
感谢@Pointy 问题出在我的 Firefox 中的某个插件。
标签: javascript firefox websocket firefox-quantum