node.js中的http web服务器需要什么中间件?

首先,我知道node.js爱好者有一些很棒的框架,例如express.js。

但是当我决定使用Koa的时候,我知道我不知道用什么中间件来构build一个简单的http服务器,即使我可以用koa来search一些中间件,但是我仍然对中间件有些疑惑第一秒和…

在新手看来,我需要一些中间件来

发送一个静态文件,(koa-static)

logging一些东西,(koa-logger)

caching文件,(koa-static-cache)

路线,(koa路线)

还有其他什么?

以及如何订购这些中间件?

运行下游中间件和产生上游中间件的概念对我来说非常棒,但是我不能为我的无知决定命令。

希望不是很愚蠢的问题。 谢谢! 🙂

在我的头顶,你可能需要中间件一些以下内容:

  • parsing请求
  • 处理错误
  • 保持服务器端会话
  • CORS
  • authentication(oauth等)
  • 授权
  • 性能监控
  • 上下文注入(例如,将数据库连接和环境variables附加到请求中)
  • '数据注入'(例如,当前login的用户的模型)

至于sorting,我认为很多排列是可能的,你应该试着声明你的中间件之间的依赖关系(例如,中间件X应该在中间件Y之后)并且在你的sorting中对它们进行说明。 例如,如果你不想logging文件调用,日志中间件应该在静态文件中间件之后。