使用http.createServer或app = express()调用express有什么区别?

时间:2017-12-18 17:12:49

标签: node.js express

我正在学习快递,我已经看到了两种不同的创建服务器的方法。只是好奇两种方法之间的区别。这是一个像大多数教程一样完成的快速服务器:

var express = require('express');
var app = express();
app.listen(3000, function () {
    console.log('Example app listening on port 3000.');
});

和我发现的第二种方式,使用http服务器。

var express = require('express');
var app = express();
var http = require('http');
var httpServer = http.createServer(app);
httpServer.listen(3000);

为什么以及何时使用其中一个?这有什么不同吗?
谢谢

1 个答案:

答案 0 :(得分:1)

差异的原因在于,有时您希望为路由创建多个Express实例,并且只有其中一个应该在侦听。然而,在最微不足道的情况下,没有明显的区别。

记住Express和HTTP服务器是两个完全不同的东西,这很重要。诀窍是app.listen自动为您实例化服务器,否则你必须自己实现。