至少在一台机器上不起作用的Websocket
问题描述:
我有一个使用websockets的应用程序。 Web服务器是glassfish 4.1.1,我们使用@ServerEndpoint作为服务器端的Websockets实现。在静像:至少在一台机器上不起作用的Websocket
中的所有计算机都运行良好最多的日期,当一些客户的一台笔记本电脑,我们得到了一个错误(他使用谷歌浏览器):
未能就WebSocket的执行“发送”连接状态
在那台计算机上,此错误永久出现,阻止涉及websocket的所有功能。
我们没有为websockets设置特定的端口。所以我假设他们正在使用默认的一个 - 80.其他页面加载成功(所以,我们的网站可以从该笔记本电脑访问)。
你有什么钥匙在哪里挖?为什么只有一台笔记本失败 是否需要提供更多信息?
预先感谢您!
答
可能是很多事情:
- 防火墙
- 防病毒
- 铬标志(如跑步:的chrome.exe - 禁用网络套接字)
- 病毒/恶意软件
- Man-in-the-middle(MitM)
我建议安装Firefox。如果Firefox在那里没有问题,那么Chrome肯定有问题。
即使防火墙或防病毒与第80个端口一起工作,防火墙或防病毒软件也可以阻止websocket吗?我无法在该机器上安装我所能做的一切。有一些解决方法吗?可能要更换websockets? – Luxor
来自端口80的一些防病毒过滤器内容,甚至阻塞或关闭您的套接字。那么,如果你想更换websockets,改变你的代码使用Comet技术。 –
谢谢你的回答。这似乎是代理中的问题。 Websockets无法连接代理。我在该机器上使用http://websocketstest.com/找到它。 – Luxor