# 生命周期 > 了解 Nitro 如何运行并处理传入到您的应用的请求。 Nitro v3 Alpha 文档仍在开发中 — 期待更新、不完善之处及偶尔的不准确。 请求可以从以下任一层被拦截并终止(可带响应,也可不带响应),顺序如下: ### 路由规则 Nitro 配置中定义的匹配路由规则将被执行。请注意,大多数路由规则可以修改响应而不终止(例如,添加一个响应头)。 ```ts [nitro.config.ts] import { defineNitroConfig } from "nitro/config"; export default defineNitroConfig({ routeRules: { '/**': { headers: { 'x-nitro': 'first' } } } }) ``` ### 全局中间件 定义在 `middleware/` 目录下的任何全局中间件都会运行: ```ts [middleware/info.ts] import { defineHandler } from "nitro/h3"; export default defineHandler((event) => { event.context.info = { name: "Nitro" }; }); ``` 中间件中返回响应将关闭该请求,应尽量避免。 了解更多关于 Nitro 中间件。 ### 路由 此阶段,Nitro 会检查 `routes/` 文件夹中定义的路由以匹配传入请求。 ```ts [routes/api/hello.ts] export default (event) => ({ world: true }) ``` 了解更多关于 Nitro 文件系统路由。 ### 服务器入口 如果定义了服务器入口处理器,则将运行: ```ts [server.ts] import { defineHandler } from "nitro/h3"; export default defineHandler((event) => { if (event.path === "/") { return "主页"; } }); ``` 可将服务器入口视为最后运行的全局中间件。 了解更多关于 Nitro 服务器入口。 ### 渲染器 如果没有匹配路由,Nitro 会寻找渲染器处理器(已定义或自动检测)来处理请求。 了解更多关于 Nitro 渲染器。