我使用的是Debian 7和浏览器Google Chrome(35)。 当我试图在websockets.org上传递回声测试时 控制台出错:
WebSocket connection to 'ws://echo.websocket.org/?encoding=text' failed: Failed to send WebSocket frame.
我的PC支持Squid 3的代理,但同一代理后面的另一个用户可以在websockets.org上传递回声测试(每个用户的squid配置相同)。
如何调试此问题?
我已关闭所有反向代理服务器(nginx,apache)
如果我在Google Chrome控制台中编写以下代码:
socket = new WebSocket("ws://echo.websocket.org/");
然后我在网页中看不到任何框架(没有握手阶段)(Google Chrome开发工具)。
更新
有趣的是,websockets连接为我提供了最新版本的Iceweasel浏览器(Firefox),但它不适用于Google Chrome或Chromium。
我使用以下命令启动Google Chrome:
/usr/bin/google-chrome-stable %U --proxy-server="http://172.16.20.12:4554"
还能做些什么? 非常感谢提前。
答案 0 :(得分:0)
握手不是帧,只是普通的HTTP。如果您启动了Websocket连接,并且服务器返回HTTP 101交换协议响应,那就是握手。
您是否尝试过使用WSS://而不是WS://?