我在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与其他浏览器的不同之处是什么? 你有什么建议吗?
答案 0 :(得分:1)
问题与" Sec-WebSocket-Extensions:permessage-deflate"有关。在about:config里面将network.websocket.extensions.permessage-deflate设置为false解决了这个问题。
同样禁用来自websocket服务器的permessage-deflate将解决问题。