知道 GraphQL

前段时间,GraphQL 呈现并掀起了一阵热潮。但是 GraphQL 跟 REST 是两种不同的东西,所以也需求必定的学习本钱,导致大部分人都没有挑选去学习它,今天就带大家简单过一遍 GraphQL 吧,期望大家能有所收成。

常识扩展:GraphQL 和 REST 对比

从零开始学习 GraphQL:入门指南和教程

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 恳求,运用它去发起恳求,并调试。

从零开始学习 GraphQL:入门指南和教程

然后点击 保存 按钮,完结创建。

查询

咱们先查出所有的学生,咱们需求跳到 运转 页面,并挑选对应的 Body 类型,填写 query 句子,然后点击 发送 按钮,得到查询成果,契合咱们的预期。

从零开始学习 GraphQL:入门指南和教程

带参查询

接着咱们能够进行 带参查询,需求同时装备:

  • query
  • variables

从零开始学习 GraphQL:入门指南和教程

常识扩展:

了解更多关于 GraphQL 常识。

  • GraphQL 有什么长处和缺陷
  • API 开发:gRPC vs GraphQL – 怎么挑选更适合你的开发计划