用于拓展 Modern.js 内置的 Web Server,与 Hook 不同的是,Middleware 可以直接操作 Node 原生的请求、响应对象,并且可以使用框架拓展。
Middleware 将会在下一个大版本中废弃,推荐使用 UnstableMiddleware 处理页面请求。
更多内容可以查看自定义 Web Server。
使用该 API 前,请先执行 pnpm run new 新建「自定义 Web Server」源码目录。
context:提供当前 Hook 上下文。
response:提供一系列处理响应的操作request:提供一系列获取请求信息的操作source:提供 Node.js 原生的 req 与 res 对象。next:执行当前 Hook 的下一个监听函数(不影响整体服务端流程)。next 函数的执行不影响后续内置流程,只控制下一个中间件是否执行。只有当响应被写入时,后续渲染流程才会中断。
Modern.js 提供了 response.locals 属性用来存放当前请求的局部变量。