Can socket。IO客户端连接到同一服务器上的两个不同端口?
可以套接字。IO客户端连接到两个不同的服务器?
当然:
var io1 = require('socket.io').listen(8001);
io1.sockets.on('connection', function (socket) {
socket.emit('news', { hello: 'world' });
});
var io2 = require('socket.io').listen(8002);
io2.sockets.on('connection', function (socket) {
socket.emit('flash', { hello: 'world' });
});
也许这是一个有趣的阅读:(来自github)
// connect at the same host / port as your website
var socket = io.connect();
// different port or host
var socket = io.connect('http://url.com');
// secure
var socket = io.connect('https://localhost');
可以套接字。IO客户端连接到相同的两个不同端口上服务器?
我假设两台机器共享同一个域。我相信它可以使用长轮询(websockets, flashsockets等也可以),甚至可以传递cookie。但是我仍然需要在ie浏览器上测试这个,因为那个浏览器从来没有做过我想要的…
可以套接字。IO客户端连接到两个不同的服务器?
最大的问题是这两台机器是否在不同的域中。如果在同一域,它将工作只是很好,甚至通过cookie(s)。如果它们在不同的域上,那么在某些浏览器上,我们会退回到json-p传输(可以想象到的最糟糕的传输),但它会工作。不幸的是,由于同源策略,cookie不会被传递。现在我正在尝试绕过这个cookie限制(难题)…