Firefox

时间:2015-07-25 14:25:03

标签: objective-c google-chrome firefox websocket

我在iOS上使用PocketSocket作为LAN WebSocket服务器(在端口8080上),并使用javascript连接到它。

以下是javascript代码:

var address = 'ws://' + window.location.host + ':8080/ws';
client = new WebSocket( address );

我使用以下浏览器测试了连接: Chrome(Windows和OS X),Safari(OS X和iPhone),Opera(Windows),Android浏览器,Panasonic电视上的浏览器。

唯一失败的浏览器是Firefox(Windows和OS X)。我已经尝试了从版本5到40的多个版本的Firefox。我也尝试过使用MozWebSocket,但无济于事。

我得到的错误是:

    Firefox can't establish a connection to the server at ws://192.168.0.100:8080/ws.

    The connection to ws://192.168.0.100:8080/ws was interrupted while the page was loading.

Firefox与其他浏览器的不同之处是什么? 你有什么建议吗?

1 个答案:

答案 0 :(得分:1)

问题与" Sec-WebSocket-Extensions:permessage-deflate"有关。在about:config里面将network.websocket.extensions.permessage-deflate设置为false解决了这个问题。

同样禁用来自websocket服务器的permessage-deflate将解决问题。