Socket.ioクライアントは同じサーバー上の2つの異なるポートに接続できますか?
Socket.ioクライアントは2つの異なるサーバーに接続できますか?
Socket.ioクライアントは同じサーバー上の2つの異なるポートに接続できますか?
両方のマシンが同じドメインを共有していると思います。クッキーを渡す場合でも、ロングポーリング(WebSocket、FlashSocketなども機能します)を使用できると思います。しかし、Internet Explorerでこれをテストする必要があります。なぜなら、そのブラウザーは私が望むことを決して実行しないからです...
Socket.ioクライアントは2つの異なるサーバーに接続できますか?
大きな問題は、これらの両方のマシンが異なるドメインにあるかどうかです。同じドメイン上にある場合は、Cookieを渡しても問題なく機能します。それらが異なるドメインにある場合、一部のブラウザーではjson-pトランスポート(考えられる最悪のトランスポート)にフォールバックしますが、機能します。残念ながら、同一生成元ポリシーのため、Cookieは渡されません。今、私はこのクッキーの制限を回避しようとしています(難しい問題)...
確かに:
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' });
});
おそらくこれは興味深い読み物です:(from 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');