如何在 GraphQL 中使用图形化界面查询

阅读时长 5 分钟读完

GraphQL 是一种新型的 API 查询语言,它可以让你更加精确地查询你需要的数据,避免了 RESTful API 中出现的过度查询和返回过多数据的问题。GraphQL 的另一个优点就是可以使用图形化界面进行查询,这使得前端开发者可以更方便地使用 GraphQL 进行开发。

本文将介绍如何在 GraphQL 中使用图形化界面进行查询,包括如何设置 GraphQL 服务器和如何使用 GraphiQL 工具进行查询。

设置 GraphQL 服务器

首先,我们需要设置一个 GraphQL 服务器,这里我们使用 Node.js 和 Express 来搭建一个简单的 GraphQL 服务器。

安装依赖

首先,我们需要安装一些依赖,包括 expressgraphqlexpress-graphql

编写代码

接下来,我们编写一个简单的 GraphQL 服务器:

-- -------------------- ---- -------
----- ------- - -------------------
----- - ----------- - - ---------------------------
----- - ----------- - - -------------------

-- -- ------- ------
----- ------ - -------------
  ---- ----- -
    ------ ------
  -
---

-- -- ---------
----- ---- - -
  ------ -- -- ------ --------
--

-- -- ------- --
----- --- - ----------

-- -- ------- --
------------------- -------------
  ------- -------
  ---------- -----
  --------- -----
----

-- -----
---------------- -- -- -
  -------------------- - ------- --- ------ -- --------------------------------
---
展开代码

这个服务器只有一个 hello 查询,返回一个字符串 'Hello world!'

在这个服务器中,我们使用了 express-graphql 中的 graphqlHTTP 中间件来处理 GraphQL 请求。graphiql: true 表示启用图形化界面。

使用 GraphiQL 工具

GraphiQL 是一个 GraphQL 的图形化界面工具,它可以让前端开发者更方便地进行查询。

打开 GraphiQL

当我们访问 http://localhost:4000/graphql 时,会自动打开 GraphiQL 工具。

编写查询

在左侧的查询编辑器中,我们可以编写我们的查询语句,例如:

点击右侧的运行按钮,可以看到返回结果:

使用参数查询

在 GraphQL 中,我们可以使用参数进行查询,例如:

这个查询会返回 ID 为 1 的用户的姓名和年龄。

我们需要在 GraphQL schema 中定义这个查询:

-- -------------------- ---- -------
---- ----- -
  -------- ----- ----
-

---- ---- -
  --- ---
  ----- ------
  ---- ---
-
展开代码

然后在 resolvers 中实现这个查询:

这个 resolvers 中的 user 函数接收一个参数 id,返回 ID 为 id 的用户对象。

使用 Mutation

除了查询之外,我们还可以使用 Mutation 对数据进行修改。

例如,我们可以定义一个添加用户的 Mutation:

这个 Mutation 接收两个参数 nameage,返回添加的用户对象。

在 resolvers 中实现这个 Mutation:

-- -------------------- ---- -------
--- ------ - --

----- ---- - -
  -------- -- ----- --- -- -- -
    ----- ---- - - --- --------- ----- --- --
    -----------------
    ------ -----
  --
--
展开代码

这个 resolvers 中的 addUser 函数接收两个参数 nameage,返回添加的用户对象。

总结

在本文中,我们介绍了如何在 GraphQL 中使用图形化界面进行查询,包括如何设置 GraphQL 服务器和如何使用 GraphiQL 工具进行查询。我们还介绍了如何使用参数查询和 Mutation。希望本文对你学习 GraphQL 有所帮助。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/650c84e895b1f8cacd677ad5

纠错
反馈

纠错反馈