CNode

【急求】 socket.io如何在ie8上运行

问答
Mm949976269发布于10 年前最后回复10 年前6 回复6819 浏览0 收藏

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

查看回复

回复 (6)

M
m949976269#1·10 年前

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

B
broven#2·10 年前

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'); }

B
broven#3·10 年前

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

M
m949976269#4·10 年前

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

M
m949976269#5·10 年前

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

M
m949976269#6·10 年前

换成1.0.6就解决了

参与回复
登录后即可参与回复。登录