socketio javascript 混乱

socketio javascript confusion

我看过几个socket.io.js的例子。 在客户端,创建连接的调用总是

  var socket = io.connect();

但是,这只是创建一个指向函数的点。 如果没有另一条线调用套接字,这怎么够了? 这不就是一个变量声明吗?

在客户端上调用 io.connect() 不带任何参数 returns 表示连接的套接字对象。由于它在客户端上,因此您无需执行任何类似...

io.on('connection', function (socket) {
  // do stuff with socket
});

...就像您在服务器上所做的那样。服务器期望许多客户端连接到它,但客户端只连接到一个服务器。在客户端

var socket = io.connect();

...足够了。您还可以将选项传递给 io.connect(),例如要连接的另一个 URL。

var socket = io.connect('/my/socket/server/endpoint');