用 http.createServer 或 app = express() 调用 express 有啥区别?
Posted
技术标签:
【中文标题】用 http.createServer 或 app = express() 调用 express 有啥区别?【英文标题】:What's the difference between calling express with http.createServer or app = express()?用 http.createServer 或 app = express() 调用 express 有什么区别? 【发布时间】:2018-06-01 01:56:27 【问题描述】:我正在学习 express,我已经看到了 2 种不同的创建服务器的方法。只是好奇这两种方法有什么区别。这是一个在大多数教程中完成的快速服务器:
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);
为什么以及何时我会使用其中一个而不是另一个?有很大的不同吗? 谢谢你
【问题讨论】:
Express.js - app.listen vs server.listen的可能重复 【参考方案1】:差异的原因是有时您想创建多个 Express 实例来进行路由,并且应该只有其中一个在监听。然而,在最微不足道的情况下,并没有明显的区别。
请务必记住,Express 和 HTTP 服务器是两个完全不同的东西。诀窍是app.listen
会自动为你实例化一个服务器,否则你必须自己做。
【讨论】:
以上是关于用 http.createServer 或 app = express() 调用 express 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章
http.createServer express.createServer有区别吗
express里http.createServer和app.listen有啥区别
NodeJS:http.createServer 和 express.createServer 之间的区别? [关闭]