使用Firefox的WebWorkers和WebSocket

使用Firefox的WebWorkers和WebSocket,firefox,websocket,web-worker,Firefox,Websocket,Web Worker,我正在尝试在WebWorker中实现一个正常工作的WebSocket连接。这应该很简单,如果我使用Chrome作为浏览器的话。然而,由于这个实验应该进一步成为产品的一部分,我需要它在所有伟大的浏览器上工作,也就是Firefox 我的问题是我不能让它与Firefox一起工作。起初Firefox无法创建WebWorker。这是一个Bug,在版本9中已修复。但是现在它似乎无法在Worker中创建WebSocket 我尝试了以下代码行: var ws = new WebSocket(url); 它失败

我正在尝试在WebWorker中实现一个正常工作的WebSocket连接。这应该很简单,如果我使用Chrome作为浏览器的话。然而,由于这个实验应该进一步成为产品的一部分,我需要它在所有伟大的浏览器上工作,也就是Firefox

我的问题是我不能让它与Firefox一起工作。起初Firefox无法创建WebWorker。这是一个Bug,在版本9中已修复。但是现在它似乎无法在Worker中创建WebSocket

我尝试了以下代码行:

var ws = new WebSocket(url);
它失败于:

WebSocket is not defined
好吧,据我所知,它应该是有效的。但事实并非如此,无论是在WebWorker内部还是在此上下文之外。我试过老一点的

var ws = new MozWebSocket(url);
它似乎在WebWorker之外工作,但我在它内部得到了与上面相同的错误

现在,有什么问题吗?我知道WebSocket在一些旧版本中默认是禁用的,但版本9应该支持与Chrome类似的功能(至少他们是这么说的)。我做错什么了吗

我正在使用Ubuntu11.10,还没有测试其他浏览器


提前谢谢

Firefox中的workers还不支持WebSocket。看


更新:Firefox 35增加了支持。

这可能是Firefox的错误(没有使WebWorkers中的WebSocket对象可见)。我会提交一个针对mozilla的bug,并在这里发布响应。这最终在中得到了修复。我明白了。似乎他们也不会为此做点什么。谢谢。
Olli Pettay[:smaug]2012-10-29 02:00:09 PDT
这个错误发生了什么
Andrea Marchesini(:baku)2012-10-29 04:38:29 PDT
我不得不花时间在这个bug上,主要是写文档。我认为最好的方法是与某人面对面地检查代码,因为补丁太大了,它改变了太多的代码等等。我只是在这张bugzilla票上做了一个改动504553@ScottStensland值得一提的是,这样做的主要效果就是无缘无故地给一群人发邮件。。。这并不是说虫子被遗忘了!更新:2015年5月12日Firefox 38允许在Web Workers中使用WebSocket。