文章
我发布的所有文章。
NestJS 如何优雅地实现爬虫功能
使用 NestJS + 原生 fetch + cheerio 实现爬虫功能。
NestJS 接入 Logger,并结合 Exception Filter 统一异常日志
本文基于当前 NestJS 项目实践,使用 `nest-winston` 接入 Winston 日志系统,再通过全局 `Exception Filter` 统一异常响应和异常日志。
NestJS 使用 Swagger 生成接口文档,并接入 Knife4j 主题
本文基于一个 NestJS 11 项目的实际改造,介绍如何接入 Swagger、启用 Knife4j 主题,并补充统一响应、JWT 鉴权、错误响应、分页查询、枚举、文件上传等进阶用法。
NestJS 项目如何检查 Node.js 版本:从版本声明到启动前强校验
本文介绍如何在 NestJS 项目中检查 Node.js 版本,包括版本声明、兼容范围声明和执行前校验。
NestJS 实现 JWT 登录、令牌刷新与全局路由守卫
本文介绍如何在 NestJS 中实现 JWT 登录、令牌刷新与全局路由守卫,包括登录参数校验、密码哈希比对、访问令牌与刷新令牌签发、受保护路由鉴权、公开路由声明,以及把当前用户身份传递给后续业务代码。
NestJS 使用 Interceptor 统一响应,并通过装饰器自定义 message
本文介绍如何在 NestJS 中使用 Interceptor 统一响应,并通过装饰器自定义 message,包括统一响应结构、Interceptor 位置、实现全局响应拦截器、用 SetMetadata 声明接口消息、使用 Reflector 读取元数据、注册为全局拦截器、默认 message 的两种策略、错误响应应该怎样处理、避免重复包装、单元测试、常见误区等。
NestJS 使用 class-validator 做字段参数校验
本文介绍如何在 NestJS 中使用 class-validator 做字段参数校验,包括必填项、字符串、邮箱、布尔值、可选字段和额外字段校验等。
NestJS 使用 class-transformer 统一格式化响应字段
本文介绍如何在 NestJS 中使用 class-transformer 统一格式化响应字段,包括删除敏感字段、格式化日期、枚举和关联对象等。