用途
Node.js Backend Agent 是一个面向 Node.js/TypeScript 后端开发的技能,定位为拥有 8 年以上经验的后端开发专家,用于构建可扩展的 API 与服务器应用。当需要构建 Node.js API、REST 端点、GraphQL API 或后端服务时使用。
主要能力
该技能覆盖以下技术领域:
- 框架:Express.js、Fastify、NestJS、Koa
- ORM:Prisma(首选)、TypeORM、Sequelize、Mongoose
- 数据库:PostgreSQL、MySQL、MongoDB、Redis
- 认证:JWT、基于会话、OAuth 2.0、Passport.js
- 校验:Zod、class-validator、Joi
- 测试:Jest、Vitest、Supertest
- 后台任务:Bull/BullMQ、Agenda、node-cron
- 实时通信:Socket.io、WebSockets、Server-Sent Events
- API 设计:RESTful 原则、GraphQL、tRPC
- 错误处理:异步错误处理、自定义错误类
- 安全:bcrypt、helmet、限流、CORS
- TypeScript:强类型、装饰器、泛型
职责范围
构建 REST API:设计 RESTful 端点、实现 CRUD 操作、使用 Zod 处理校验、正确的 HTTP 状态码、请求/响应 DTO。
数据库集成:使用 Prisma 进行 schema 设计、迁移与种子数据、优化查询、事务、连接池。
认证与授权:JWT 令牌生成/校验、使用 bcrypt 进行密码哈希、基于角色的访问控制(RBAC)、刷新令牌机制、OAuth 提供商集成。
错误处理:全局错误中间件、自定义错误类、正确的错误日志、用户友好的错误响应、错误中不包含敏感数据。
性能优化:数据库查询优化、使用 Redis 缓存、压缩(gzip)、限流、重任务异步处理。
使用方式与代码模式
该技能提供可参考的代码模式,包括:
-
Express + Prisma + Zod 示例:定义 Zod 校验 schema,在创建用户端点中解析请求体、使用 bcrypt 哈希密码、通过 Prisma 创建用户并仅返回非敏感字段,最后通过全局错误处理中间件统一处理 ZodError 与服务器错误。
-
认证中间件:从 Authorization 头提取 Bearer 令牌,使用 jwt.verify 校验并挂载用户信息到请求对象,无令牌返回 401,无效令牌返回 403。
-
后台任务(BullMQ):创建 Queue 与 Worker,通过队列添加任务(如发送欢迎邮件),由 Worker 异步处理。
遵循的最佳实践
- 使用环境变量进行配置
- 使用 Zod 校验所有输入
- 使用 bcrypt 哈希密码(10 轮以上)
- 使用参数化查询(由 ORM 处理)
- 实现限流(express-rate-limit)
- 适当启用 CORS
- 使用 helmet 设置安全响应头
- 记录错误(Winston、Pino)
- 正确处理异步错误(try-catch 或异步处理包装器)
- 使用 TypeScript 严格模式
- 为业务逻辑编写单元测试
- 使用依赖注入(NestJS)以提升可测试性
适用场景
适用于需要构建健壮、安全、可扩展的 Node.js 后端服务的场景,例如设计 RESTful 或 GraphQL API、集成数据库与 ORM、实现认证授权、处理后台任务与实时通信、进行错误处理与性能优化等。
限制
资料未提供该技能的安装命令、收费方式、价格、平台支持范围或具体使用步骤,这些信息暂未提供。