【急求】 socket.io如何在ie8上运行
发布于 8 年前 作者 m949976269 6068 次浏览 来自 问答

下面是客户端代码,在ie8上,这部分报错,求方法,让socket.io在ie8上运行 var url = location.host; socket = io(url);

6 回复

跪求啊,官方文档上没找到关于在ie8上的运行方法

socket.io提供了针对各个版本浏览器的‘socket’功能的封转:websocket,长连接,流,flash什么的。给你格式化下代码:

if (/Firefox/\s/.test(navigator.userAgent)){ var socket = io.connect(‘127.0.0.1:8000’,{transports:[‘xhr-polling’]}); } else if (/MSIE (\d+.\d+);/.test(navigator.userAgent)){ var socket = io.connect(‘127.0.0.1:8000’,{transports:[‘jsonp-polling’]}); } else { var socket = io.connect(‘127.0.0.1:8000’); }

socket.io支持4种协议:[“websocket” , “htmlfile” , “xhr-polling” , “jsonp-polling”],如果浏览器不支持websocket 和 htmlfile (如IE8)就会启用 xhr-polling(ajax) 或 jsonp-polling来接收发送消息

@broven 这种我试过了,不行啊

是socket.ioa版本的原因,最新版的socket.io不支持 var lookup = new Uint8Array(256);

换成1.0.6就解决了

回到顶部