socket.io从客户端切换到ajax

时间:2014-02-12 05:07:33

标签: websocket socket.io

是否可以从客户端更改优先的io.transports?由于某些原因,一些客户不能使用websockets,所以我想制作更改prefferef传输列表的按钮。我该怎么做?

1 个答案:

答案 0 :(得分:1)

Socket.io客户端自动确定可用的传输,并且有一个try multiple transports选项,默认情况下为true,它会在最终放弃之前尝试所有可用的传输。您应该在服务器端启用所有传输,如下所示:

io.set('transports', [
 'websocket'
,'flashsocket'
,'htmlfile'
,'xhr-polling'
,'jsonp-polling'
]);

但是,您可以在客户端启用传输:

socket = io.connect(HOSTNAME, {
  transports: ['xhr-polling']
});