知道 GraphQL
前段时间,GraphQL 呈现并掀起了一阵热潮。但是 GraphQL 跟 REST 是两种不同的东西,所以也需求必定的学习本钱,导致大部分人都没有挑选去学习它,今天就带大家简单过一遍 GraphQL 吧,期望大家能有所收成。
常识扩展:GraphQL 和 REST 对比
GraphQL 好在哪?
首要来说说 GraphQL 到底好在哪:
- GraphQL 速度快而且安稳
- GraphQL 能够获取更多的资源
- GraphQL 是单端点查询
- GraphQL 的可持续性十分出色
- GraphQL 具有向下兼容的特性
GraphQL 运用场景
GraphQL 的按需查询十分实用,试想一下,你们在开发一个十分大型的网站的时分,一个主页就得恳求很多个接口了,比方:
- 轮播图接口
- Tag 接口
- List 接口
在上面的比方里,一个主页就得恳求三个以上的接口了,浏览器并发数太多的话,会大大影响用户的运用体验。
那假如运用 GraphQL 去查询呢,就只需求一个接口就完事了,也便是一个恳求就能够查询很多个恳求所需求的数据,那自然减少了并发数。
GraphQL 教程
GraphQL 其实不难,无非便是传个不同的 query句子 到后端,接纳不同的 JSON 算了。
query 查询
比方我现在要设计一个学生管理平台,我想查询学生列表,我应该传什么参数呢?
分析一下上面的句子:
- query:操作类型
- getStudents:操作函数名
- students:是后端界说好的接口
- id,name,age:指的是咱们需求查询的字段
这样查询,回来的数据为:
观察上面的数据,使咱们想要的数据,而且只回来咱们需求查询的字段。
传参查询
咱们刚刚说了 getStudents 是 函数名,那既然是函数,肯定是能够传参的,比方,咱们只需求查询 id 为 1 的学生,咱们能够这么传:
query
variables
这样就能查到咱们想要的数据了。
mutation 修正
前面讲的是 query 句子,咱们试一下 mutation 句子,他能够对数据进行修正、新增。
比方咱们想要新增一个学生,咱们能够这么写:
调试 GraphQL 接口过程
咱们写完 GraphQL 接口之后,咱们需求运用 API 东西对 GraphQL 接口进行调试。
新建 GraphQL 恳求
咱们需求先在 Apifox 里新建一个 GraphQL 恳求,运用它去发起恳求,并调试。
然后点击 保存 按钮,完结创建。
查询
咱们先查出所有的学生,咱们需求跳到 运转 页面,并挑选对应的 Body 类型,填写 query 句子,然后点击 发送 按钮,得到查询成果,契合咱们的预期。
带参查询
接着咱们能够进行 带参查询,需求同时装备:
- query
- variables
常识扩展:
了解更多关于 GraphQL 常识。
- GraphQL 有什么长处和缺陷
- API 开发:gRPC vs GraphQL – 怎么挑选更适合你的开发计划