Skip to content
On this page

kever中,控制器与路由是相辅相成的,控制器拥有承载路由的能力,路由通过控制器进行注册,并且一个控制器可以提供多个路由。

其实在创建一个web Server中,已经将控制器讲完了,是不是很简单?😁

我们下面来看一下同样简单的路由。

路由

创建一个web Server中,我们已经见过了Get路由装饰器,此外它还有7个兄弟姐妹,分别是:

  • Post
  • Put
  • Delete
  • Head
  • Options
  • Patchs
  • All

这些装饰器分别对应相应http method,每个装饰器参数表示请求路径(匹配规则遵循koa-router路由path规则),All装饰器则表示被装饰的方法会承接来自7种http method的请求。

控制器方法经过路由装饰器修饰后,交由koa-router注册成路由。

下面再来看一个Post装饰器的🌰吧

ts
import { Controller, Context } from '@kever/core'
import { Post } from '@kever/router'

@Controller('/')
export class IndexController {

  @Post('/index/:id')
  ready(ctx: Context) {
    const params = ctx.params
    ctx.body = params
  }
}