路由通配符( * )
在Nest中( * ) 作为路由的通配符,这样就可以匹配相应的路由了。例如:
import { Controller, Get, Post } from '@nestjs/common';
@Controller('cats')
export class CatsController {
@Post()
createPost() {
return '这里是Controller:POST路由的cats的createPost方法~';
}
@Get()
findAllCats() {
return '这里是Controller:cats的findAllCats方法~';
}
@Get('wjy*wjy')
findWildcard() {
return '这里是路由的通配符(*)';
}
}
这个路由将匹配:wjy_wjy、wjywjy、wjy.wjy、wjytestwjy等.
字符 ? 、 + 、 * 以及 () 是它们的正则表达式对应项的子集。
连字符 (-) 和点 (.) 按字符串路径解析。
状态码
不知道刚刚有没有注意到,在获取POST路由的时候,状态码是201;
默认情况下,响应的状态码总是200,POST 请求是201.
修改状态码
处理程序层添加@HttpCode(…) 装饰器来更改
import { Controller, Get, HttpCode, Post } from '@nestjs/common';
@Controller('cats')
export class CatsController {
@Post()
@HttpCode(200)
createPost() {
return '这里是Controller:POST路由的cats的createPost方法~';
}
@Get()
findAllCats() {
return '这里是Controller:cats的findAllCats方法~';
}
@Get('wjy*wjy')
findWildcard() {
return '这里是路由的通配符(*)';
}
}