# 路由

router 对象是中间件和路由的隔离实例。你可以把它想象成一个只能执行中间件和路由功能的 "mini-application,"。每个 Express 应用程序都有一个内置的应用程序路由。

路由的行为类似于中间件本身,因此您可以将其用作 app.use() 的参数或用作另一个路由的 use() 方法的参数。

顶级 express 对象具有创建新 router 对象的 Router() 方法。

一旦你创建了一个路由对象,你就可以像应用程序一样向它添加中间件和 HTTP 方法路由(例如 getputpost等)。例如:

// invoked for any requests passed to this router
router.use((req, res, next) => {
  // .. some logic here .. like any other middleware
  next()
})

// will handle any request that ends in /events
// depends on where the router is "use()'d"
router.get('/events', (req, res, next) => {
  // ..
})

然后,您可以将路由用于特定的根 URL,以这种方式将您的路由分成文件甚至迷你应用程序。

// only requests to /calendar/* will be sent to our "router"
app.use('/calendar', router)
方法 描述
router.all 此方法对于为特定路径前缀或任意匹配映射 "global" 逻辑非常有用。
router.METHOD 在 Express 中提供路由功能。
router.param 为路由参数添加回调触发器,其中 name 为参数名称,callback 为回调函数。
router.route 返回单个路由的实例,然后您可以使用该实例处理带有可选中间件的 HTTP 动词。
router.use 使用指定的中间件函数或函数,带有可选的挂载路径 path,默认为 "/"。
Last Updated: 6/17/2023, 6:57:19 PM