在 GraphQL 中使用 GraphQL-Yoga 实现服务端的技术实现

阅读时长 4 分钟读完

前言

GraphQL 是一个新兴的服务端API查询语言和运行时,可以在多种客户端语言中进行操作,如JavaScript,iOS,Android,Java等。GraphQL 可以极大地提高API查询的效率和可预测性,并且更加灵活。

但是GraphQL本身是一个规范性语言,需要一个运行时才能够使用。GraphQL-Yoga 就是一个基于Node.js的快速、易用、一致的GraphQL服务器,它内置了各种有用的功能,具有高度可配置性,可靠且易于扩展。

本文将详细介绍如何在 GraphQL 中使用 GraphQL-Yoga 实现服务端,以及如何构建一个简单的 GraphQL 应用程序。

构建 GraphQL-Yoga 应用程序

首先,我们需要安装 GraphQL-Yoga。运行以下命令:

然后,在你的应用程序根目录下,创建一个新文件 index.js,这将是我们的首页文件。

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

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

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

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

编写 GraphQL 模式

GraphQL 应用程序的数据模型由模式文件定义。这个文件通过描述所有可用的查询项来定义你的API,包括数据类型、字段、查询和变量。

在你的应用程序根目录下,创建一个名为 schema.graphql 的新文件,这将是你的模式文件,内容如下:

这是一个非常简单的模式文件,其中包含了一个叫做 hello 的字段,它会返回一个字符串类型的数据。

编写解析器函数

解析器是类似于控制器的函数,它负责查询你的数据模型,执行任何所需的转换,并返回响应。每个解析器都与你的数据模型上一个特定的字段相关联。

在 index.js 文件中,添加以下代码以编写解析器函数:

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

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

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

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

这段代码定义了 hello 解析器函数,它简单的返回了一个字符串“Hello World!”。

进行查询

现在,我们已经设置好了我们的 GraphQL 应用程序,我们可以使用 GraphQL Playground 应用程序进行查询。

例如,在你的 GraphQL Playground 应用程序中,执行以下查询:

你会得到以下响应:

总结

GraphQL-Yoga 是一个快速、易用、一致的 GraphQL 服务器。通过使用 GraphQL-Yoga,可以轻松的构建出使用 GraphQL 的应用程序,并且可以轻松添加解析器函数来查询你的数据模型。

本文介绍了如何在 GraphQL 中使用 GraphQL-Yoga 实现服务端,包括构建一个简单的 GraphQL 应用程序的各种步骤。

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

纠错
反馈