var express = require("express")
, app = express()
, http = require("http").createServer(app)
我经常看到这些被依赖。根据我的理解,http托管前端html?和表达持有服务器端的nodejs逻辑?并且连接是express的基础层,那么服务器端模块也是吗?
如果不是这样,为什么人们不这样做
express().listen(8080)
代替
require("http").createServer(express()).listen(8080)
Express
是上的另一层http
。它负责Web应用程序所需的基本重复任务。connect
是一个中间件,它也处理Web应用程序所需的基本重复任务。
使用任何框架背后的整个想法是保持干燥,不要重复自己。每个Web应用程序都非常需要诸如解析请求正文,解析cookie之类的任务。默认Express
提供它们。
在Express 4.x中,大部分已重构为几个粒度模块,例如body-parser
,morgan
等等。一个人可以直接使用它们而无需使用express。请参阅Express-GitHub了解完整的模块集。
Express
是内部使用http
手段之上的另一层。换句话说,它是包装。如果查看的源代码,您会发现它在内部使用。请参阅https://github.com/strongloop/express/blob/master/lib/application.js#L540-543上突出显示的声明Express
http
http
Express
http
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句