2012-01-12 8 views
5

WebWorker内で動作するWebSocket接続を実装しようとしています。それは簡単でなければならず、Chromeをb rowserとして使用しているのです。しかし、この実験はさらに生産の一部になるはずなので、Firefoxのすべての素晴らしいブラウザで動作する必要があります。WebWorkerとWebSockets with Firefox

私の問題は、Firefoxで動作させることができないということです。最初にFirefoxはWebWorkerを作成できませんでした。これはバグだったので、バージョン9で修正されました。しかし、今は、Worker内でWebSocketを作成できないようです。それが動作するはずthisによると、

WebSocket is not defined 

まあ:

var ws = new WebSocket(url); 

で失敗します。

は、私は次のコード行を試してみました。しかし、WebWorker内でも、このコンテキスト外でも、そうではありません。私はWebWorkerの外で動作しているようですが、私はその中に上記と同じエラーを取得し、古い

var ws = new MozWebSocket(url); 

を試してみました。

今、問題は何ですか?私はWebSocketを知っています。古いバージョンのいくつかのバージョンでは無効になっていますが、バージョン9ではChromeと同様の機能がサポートされるはずです。だから私は何か間違っている?

私はUbuntu 11.10を使用していて、まだ他のブラウザをテストしていません。

ありがとうございます!

+1

これはFirefoxのバグ(WebSocketオブジェクトをWebWorkersに表示させない)である可能性があります。私はmozillaに対してバグを報告し、ここに返答を投稿します。 – kanaka

+0

これは最終的に[Firefox 38](https://bugzilla.mozilla.org/show_bug.cgi?id=504553#c161)で修正されています。 –

答えて

6

FirefoxのワーカーにはまだWebSocketがサポートされていません。 https://bugzilla.mozilla.org/show_bug.cgi?id=504553

アップデート:Firefox 35サポートを追加しました。

+0

私は参照してください。彼らはどちらかについて何かしようとしているように見えません。ありがとうございました。 – j0ker

+0

'Olli Pettay [:smaug] 2012-10-29 02:00:09 PDT' _このバグでは何が起こっていますか_ ' Andrea Marchesini(:baku)2012-10-29 04:38:29 PDT' _私はこのバグにほとんど時間を費やす必要があります。パッチが巨大で、コードが多すぎるなどの理由で、このコードを正面から見直すことが最善のアプローチだと思います._ – knutole

+0

私はこのbugzillaチケットにバンプをしたばかりです504553 –