我在Windows上使用最新的稳定版Firefox / Chrome来测试我的应用程序(使用socket.io)。但是websocket传输不起作用,在浏览器控制台中它发送的消息显示它支持Websocket,xhr-polling ......但它不起作用然后回退使用其他人(大约10s之后)。
我将源代码运行在Ubuntu(在VM中)并在Ubuntu上使用Firefox / Chrome进行测试,它可以立即与websocket配合使用。然后我尝试使用Windows版本的2个浏览器在Ubuntu上测试服务器,websocket不起作用(与Windows上的服务器相同)然后回退。所以我认为问题出在我的Windows或Firefox / Chrome上。
我不知道原因:是否发生在使用Windows的其他计算机上或Windows防火墙出现问题?
更新:Websocket在Windows上的Safari中运行。我尝试卸载Firefox和Chrome,它仍然无法正常工作。我试过,它适用于其他Windows 7计算机(我的朋友和VM)。我的Windows 7一定存在一些问题。
答案 0 :(得分:1)
确保您的防病毒软件没有阻止WebSockets:https://github.com/LearnBoost/socket.io/wiki/Socket.IO-and-firewall-software
答案 1 :(得分:0)
面临同样的问题。解决这个问题的方法是使您的网络套接字安全。切换到wss调用,一切都应该没问题。