📘 Node.js & GraphQL · 现代API

30章 从入门到实战
Node.js 简介 安装与版本管理 npm/yarn 包管理器 第一个 Node.js 程序
回调函数 Promise async/await 事件循环机制
CommonJS 与 ES Module 核心模块 自定义模块 npm 包发布
Express 安装与路由 中间件机制 请求与响应处理
RESTful 设计原则 CRUD 操作 错误处理 日志记录
关系型与非关系型对比 MongoDB 安装与基本操作 Mongoose ODM 入门
Schema 设计 数据验证 关联查询 聚合管道
JWT 原理 bcrypt 密码加密 登录注册接口实现 中间件鉴权
GraphQL 与 REST 对比 Schema 与类型系统 Query 与 Mutation
Apollo Server 安装与配置 第一个 GraphQL 端点 GraphQL Playground
标量类型 对象类型 枚举类型 接口与联合类型
查询参数 变量 输入对象类型 必填与默认值
Resolver 函数 参数解析 上下文对象 数据源整合
Mongoose + GraphQL CRUD 操作实现 数据关联查询
创建/更新/删除操作 实时订阅 PubSub 机制
自定义错误 格式化错误 部分成功处理
上下文中的用户验证 指令权限控制 字段级权限
N+1 问题与 DataLoader 查询复杂度分析 持久化查询
深度限制 速率限制 白名单查询 SQL/NoSQL 注入防护
TypeScript 基础 类型定义 编译配置 与 Express 集成
类型生成 codegen 工具 类型安全解析器
Jest 配置 单元测试 集成测试 Mock 数据
Schema 测试 Resolver 测试 e2e 测试
Dockerfile 编写 docker-compose 编排 多阶段构建
GitHub Actions 配置 自动化测试 自动部署
Winston 日志 Elastic APM Prometheus 指标收集
微服务设计原则 GraphQL 联邦网关 服务间通信
联邦架构 子服务实现 网关配置 实体关联
PM2 进程管理 Nginx 反向代理 SSL 证书 环境变量管理
综合项目设计与实现 从 REST 迁移到 GraphQL 性能调优与总结