如何初始化socket.io的实例?
How to initialize an instance of socket.io?
我发现至少有两种方法可以做到这一点。第一种方法创建一个 HTTP 服务器,尽管第二种方法没有。
我找不到任何关于此的具体教程。
案例一
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
http.listen(3000);
案例二
var app = require('express')();
var port = process.env.PORT || 3000;
var io = require('socket.io').listen(app.listen(port));
这两种方法有何不同?为什么第二种方法不需要 HTTP 服务器?
app.listen()
为您创建 http 服务器(express 让您使用的快捷方式)。
这是 app.listen()
的代码:
app.listen = function(){
var server = http.createServer(this);
return server.listen.apply(server, arguments);
};
这个快递代码是here。
我发现至少有两种方法可以做到这一点。第一种方法创建一个 HTTP 服务器,尽管第二种方法没有。 我找不到任何关于此的具体教程。
案例一
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
http.listen(3000);
案例二
var app = require('express')();
var port = process.env.PORT || 3000;
var io = require('socket.io').listen(app.listen(port));
这两种方法有何不同?为什么第二种方法不需要 HTTP 服务器?
app.listen()
为您创建 http 服务器(express 让您使用的快捷方式)。
这是 app.listen()
的代码:
app.listen = function(){
var server = http.createServer(this);
return server.listen.apply(server, arguments);
};
这个快递代码是here。