为什么有些开发人员使用“http”和“express”来创build服务器?
特别是在这行代码中:
我有点新node.js和大部分教程,我已经看到初始化服务器
var http = require('http'); var express = require('express'); app = express(); //omit http.createServer(app).listen(1337)
其中,如果你已经使用express
那么你可以做:
var express = require('express'); var app = express(); // omit app.listen(1337,function(){ });
这两种代码结构有什么主要区别?
没有意义的区别。 实际上,如果您查看app.listen()
的代码,则app.listen()
执行http.createServer()
然后调用.listen()
。 这只是一个直接保存你使用http
模块的快捷方式。
这里是app.listen()
的代码 :
app.listen = function listen() { var server = http.createServer(this); return server.listen.apply(server, arguments); };
您的第二个代码块只是less一点代码,因为它使用app.listen()
快捷方式。 两者都是一样的。