如何禁用WS-WSS协议以测试与旧浏览器的向后兼容性?我使用的是socket.io库,我想确保他们实现的轮询技术符合我的要求。
以下是破解而非答案:
尝试重写WebSocket,使其失败。即,在创建socket.io客户端之前,请尝试运行以下脚本:
WebSocket = undefined;
如果一切顺利,socket.io客户端将接收您的全局变量(==undefined
),而不是标准的Javascript原型,模拟不支持WebSocket的浏览器。
要撤消此操作,请刷新页面或打开Javascript控制台并运行:
delete WebSocket
(黑客在我的Safari上使用Plezi客户端…没有用socket.io或其他浏览器进行检查)
祝你好运!
为了进行测试,可以在socket.io连接代码中指定允许的传输。因此,要了解轮询选项如何用于测试,可以将其指定为唯一选项。
您也可以在IE9中运行网页,或者在IE9模拟模式下运行更高版本的IE(因为IE9不支持webSockets)。我已经用IE11尝试过了,它确实强制socket.io进入轮询模式。