Sails 附带了一套可立即使用的常规 HTTP 中间件。当然,您可以选择禁用、覆盖、追加或重新排列它,但预安装的堆栈对于大多数开发或生产环境中的应用程序来说都是完全可以接受的。以下是 Sails 中捆绑的标准 HTTP 中间件函数列表,按照每次服务器接收传入 HTTP 请求时执行的顺序排列
HTTP 中间件键 | 用途 |
---|---|
cookieParser * | 将 cookie 标头解析为一个干净的对象,以便在后续中间件和应用程序代码中使用。 |
session * | 根据用户的 cookie 和您的会话配置,为请求的用户代理创建或加载一个唯一的会话对象 (req.session )。 |
bodyParser | 使用Skipper从 HTTP 请求主体解析参数和二进制上游(用于流式文件上传)。 |
compress | 使用 gzip/deflate 压缩响应数据。有关详细信息,请参阅compression 。 |
poweredBy | 将X-Powered-By 标头附加到传出响应。 |
router * | 这是将您的应用程序逻辑应用于任何给定请求的大部分内容。除了在钩子中运行"before" 处理程序(例如 csrf 令牌强制)和一些内部 Sails 逻辑之外,此路由还使用您的应用程序的显式路由(在sails.config.routes 中)和/或路由蓝图来路由请求。 |
www * | 使用 Connect 的静态中间件提供应用程序“public”文件夹(在sails.config.paths 中配置,通常为.tmp/public/ )中的静态文件,通常是图像、样式表、脚本。 |
favicon | 如果在/assets/favicon.ico 中提供了应用程序的浏览器 favicon,则提供该 favicon。 |
*
:带有星号 (*) 的中间件几乎永远不需要修改或删除。请仅在您确实了解自己在做什么的情况下这样做。