Backend Implementation Patterns 是一套面向生产环境的后端 API 实现模式集合,重点在于构建健壮、可扩展的后端接口。
主要能力与用途
- API 设计模式:采用基于资源的路由方式,覆盖列表(GET /api/users)、获取单条(GET /api/users/:id)、创建(POST /api/users)、更新(PUT /api/users/:id)、删除(DELETE /api/users/:id),并支持嵌套资源,如获取与创建某用户的文章(GET/POST /api/users/:id/posts)。
- 请求/响应模式:提供泛型 APIResponse<T> 接口,包含 success、data、error(code/message/details)与 meta(page/limit/total)字段;并给出 handleRequest 辅助函数,将处理逻辑包装为统一响应。
- 校验层:示例使用 zod 定义 CreateUserSchema(email 为邮箱格式,name 长度 2-100,age 为可选非负整数);在路由中通过 safeParse 校验请求体,失败时返回 400 及 VALIDATION_ERROR 与详细错误。
- 认证模式:使用 JWT,generateToken 生成过期时间为 7d 的令牌;authenticateToken 中间件从 Authorization 头提取令牌,缺失时返回 401 UNAUTHORIZED,验证失败时返回 401 INVALID_TOKEN,成功则将 userId 写入请求对象。
- 错误处理:定义 AppError 基类(含 statusCode、code、details)及 NotFoundError(404 NOT_FOUND)、ValidationError(400 VALIDATION_ERROR)子类;错误处理中间件识别 AppError 并返回对应状态码与错误信息,其他错误统一返回 500 INTERNAL_ERROR。
- 数据访问层:给出 Repository<T> 接口(find、findById、create、update、delete)与 UserRepository 实现示例,基于 db.user 的 findUnique/create 等方法。
- 限流:使用 express-rate-limit,窗口 15 分钟、最多 100 次请求,超出时返回 RATE_LIMIT 错误。
使用方式
该技能以模式与代码示例形式呈现,可在实现后端 API 时作为结构参考:先设计路由与响应结构,再引入校验层、认证中间件、错误类与处理中间件、仓储层与限流。资料未提供安装命令或运行方式。
适用场景
适用于需要统一 REST 接口结构、请求校验、JWT 认证、错误处理与基础限流的后端服务开发;也可与 api-design-patterns、postgres-advanced-patterns、security-implementation-guide、tdd-workflow 等技能配合使用。若采用 Next.js App Router,可参考 nextjs-fullstack-patterns。
限制
资料未提供 GraphQL 的具体实现示例、价格、平台要求与完整安装步骤;相关内容暂未提供。