我试图在WebWorker内部实现一个可用的WebSocket连接。这应该很简单,而且如果我使用Chrome作为b rowser。然而,因为这个实验应该进一步成为一个产品的一部分,我需要它来处理所有伟大的浏览器,也就是Firefox。使用Firefox的WebWorkers和WebSockets
我的问题是我无法使用Firefox工作。起初Firefox不能创建WebWorker。这是一个Bug,并在版本9中得到修复。但是现在看来它不能在Worker中创建一个WebSocket。
我尝试下面的代码行:
var ws = new WebSocket(url);
其失败:
WebSocket is not defined
那么,根据this它应该工作。但它并不在WebWorker中,也不在此范围之外。我尝试了更旧的
var ws = new MozWebSocket(url);
这似乎在WebWorker的外部工作,但我得到了与上面相同的错误。
现在,有什么问题?我知道WebSockets在某些旧版本中禁用了byy默认设置,但版本9应该支持与Chrome类似的功能(至少这就是他们所说的那样)。那么我做错了什么?
即时通讯使用Ubuntu 11.10,并没有测试其他浏览器呢。
在此先感谢!
这似乎是可能的这是一个Firefox的错误(不使WebSocket对象在WebWorkers中可见)。我会提交一个针对mozilla的错误,并在这里发布回复。 – kanaka 2012-01-12 22:05:30
这终于在[Firefox 38]中修复了(https://bugzilla.mozilla.org/show_bug.cgi?id=504553#c161)。 – 2015-05-19 06:28:46