启用 API 接口版本控制
上一章讲了使用 nest g resource user命令来生成一个完整 CRUD 资源,那么如何控制全局启用 API 接口版本控制?
使用 app.enableVersioning
我们在mian.ts 中
1、引入import { VersioningType } from '@nestjs/common';
URI = 0,
HEADER = 1,
MEDIA_TYPE = 2,
CUSTOM = 3
上面有4 种版本传递方式:
1.URL(推荐)格式:/v1/users
2.Header 请求头携带:Accept-Version: 1 或自定义头
3.Query 参数携带:/users?version=1
4.CUSTOM(自定义) extractor: (req) => req.headers['x-api-version'] || '1',
我们将使用URL方式,代码如下
app.enableVersioning({
type: VersioningType.URI,
});
然后在代码中使用:
一、 在controller中配置
1、整个con设置版本,增加类的修饰器
@Controller({
path: 'users',
version: '1',
})
二、单个接口需要设置版本
1、import { Version} from '@nestjs/common'; //引入
2、在方法上写入
@Get()
@Version('1')
findAll() {
return this.userService.findAll();
}

浙公网安备 33010602011771号