NestJS数据库与配置管理

41 阅读1分钟

@nestjs/config 管理环境配置

创建.env.development用于管理数据库环境配置

image.png

集成 TypeORM

image.png

通过这两步配置好了数据库环境,之后就可以和数据库完成交互

class-validator、class-transformer 进行 DTO 校验

class-validator 的作用是:验证传入的参数是否符合要求 比如,要求 username 必须是字符串,password 至少 6 位, 它就会自动检查客户端传入的 body 是否符合这些条件。 image.png

若不符合要求就会出现错误输出:

image.png

class-transformer它能在请求体被转换成类实例时修改字段的值

image.png

例如这里的role输入时是大写,但是最后响应输出时显示就是经过修改后的小写

image.png

全局异常过滤器(HttpExceptionFilter)

统一拦截和格式化所有接口的错误返回,让你的 API 响应结构更一致、更易读。

使用前:

image.png

使用后:

image.png

可以根据项目需求更改返回的格式