《GraphQL学习指南》是由机械工业出版社出版的一本关于GraphQL方面的书籍,作者是伊芙·波塞洛,主要介绍了关于GraphQL、GraphQL指南方面的知识内容,目前在GraphQL类书籍综合评分为:7.2分。
书籍介绍
《GraphQL学习指南》为希望开始使用GraphQL的前端Web开发人员、后端工程师以及项目或产品经理提供了一条清晰的学习路径。书中将先后探索图论、图数据结构和GraphQL类型,之后在实际项目中学习如何为照片共享应用构建schema。本书还介绍了Apollo Client,可用来将GraphQL连接到用户界面。
GraphQL是一种协议和一种查询语言。GraphQL API可以直接访问数据存储,但在大多数情况下,GraphQL API是一个数据聚合器和一个抽象层,一个可以提升开发速度、减少维护工作并让开发人员更快乐的层。本书从GraphQL的历史和规范讲起,结合React和Apollo帮助读者从实际项目中了解GraphQL在服务端和客户端两方面的构建方式。本书也算是为GraphQL的布道尽一份力,推广一下下一代API的构建形式。
目录
- 前言 1
- 第1章 欢迎来到GraphQL的世界 5
- GraphQL是什么 6
- GraphQL规范 8
- GraphQL的设计原则 8
- GraphQL的起源 9
- 数据传输的历史 10
- 远程过程调用 10
- 简单对象访问协议 10
- 表述性状态传递(REST) 10
- REST的缺点 11
- 过量获取 11
- 获取不足 13
- 管理REST接口 15
- 现实世界中的GraphQL 15
- GraphQL客户端库 15
- 第2章 图论 17
- 图论相关词汇 19
- 图论的历史 22
- 树就是图 25
- 现实世界中的图形结构 28
- 第3章 GraphQL查询语言 31
- GraphQL API工具 33
- GraphiQL 33
- GraphQL Playground 35
- 公共GraphQL API 37
- GraphQL查询字段 37
- 边和连接 40
- 片段 41
- 变更 47
- 使用查询变量 48
- 订阅 49
- 自检 50
- 抽象语法树 51
- 第4章 设计schema 53
- 定义类型 53
- 类型 54
- 标量类型 55
- 枚举 55
- 连接和列表 56
- 一对一连接 57
- 一对多连接 58
- 多对多连接 59
- 不同类型的列表 61
- 参数 63
- 筛选数据 64
- 变更 67
- 输入类型 68
- 返回类型 71
- 订阅类型 72
- schema文档 73
- 第5章 创建一个GraphQL API 77
- 项目设置 77
- 解析器 78
- 根解析器 80
- 类型解析器 81
- 使用输入和枚举类型 84
- 边和连接 86
- 自定义标量 90
- apollo-server-express 94
- 上下文 97
- 安装MongoDB 97
- 将数据库添加到上下文 98
- GitHub授权 100
- 设置GitHub授权 100
- 授权流程 101
- githubAuth变更操作 103
- 验证用户 106
- 总结 112
- 第6章 GraphQL客户端 113
- 使用GraphQL API 113
- fetch请求 113
- graphql-request 115
- Apollo Client 117
- 在React中应用Apollo Client 118
- 启动项目 118
- 配置Apollo Client 119
- Query组件 121
- Mutation组件 124
- 授权 126
- 为用户授权 127
- 用户识别 130
- 添加缓存 132
- 取回策略 132
- 持久缓存 133
- 更新缓存 134
- 第7章 现实世界中的GraphQL 139
- 订阅 139
- 使用订阅 140
- 在项目中配置订阅 144
- 上传文件 148
- 在服务器端处理文件上传 149
- 通过Apollo Client上传一张新照片 151
- 安全 157
- 设置请求超时时间 157
- 数据限制 158
- 限制查询深度 158
- 限制查询复杂度 160
- Apollo Engine 162
- 让我们更进一步 163
- 增量迁移 163
- schema优先开发 164
- GraphQL的业内活动 166
- 社区 167
- 加入社区聊天群组 167