如何在 Deno 中使用 Apollo GraphQL?

阅读时长 8 分钟读完

Deno 是一个现代的 JavaScript 和 TypeScript 运行环境,它在某些方面优于 Node.js。其中一个优点是不需要使用依赖管理器,而且还内置了模块化管理。在 Deno 中使用 GraphQL 充满了乐趣。而 Apollo GraphQL 已经成为了使用 GraphQL 的最佳选择之一。加载 Apollo GraphQL 服务端和客户端来运行 GraphQL 是一个好的选择。

在接下来的文章中,我们将详细讨论如何在 Deno 中使用 Apollo GraphQL。我们将探索 Apollo GraphQL 的工作原理,如何建立服务端和客户端,并使用示例来阐述这些概念。

探索 Apollo GraphQL

为了更好地理解 Apollo GraphQL 的工作原理,让我们从 GraphQL 开始。

GraphQL 是一种使用类型系统来定义 API 的查询语言和运行时。GraphQL 应用程序的核心是一个 GraphQL 服务器,它接收查询并返回正确的响应。我们可以使用任何语言来构建 GraphQL 服务器,但是我们将使用 Node.js/Javascript 实现。

Apollo 公司是一个为 GraphQL 生态系统开发工具的公司。Apollo 提供了一组库和工具,用于建立、运行和使用 GraphQL API。现在,Apollo 成为了一个真正完整的工具链,涵盖了全栈 GraphQL,从服务端到客户端。

建立服务端

让我们先从建立 Apollo GraphQL 服务器开始。请按照以下步骤操作:

步骤 1: 安装依赖

使用以下命令在本地安装所需的依赖项:

步骤 2: 创建 DENO 配置文件

在项目目录下创建名为 denon.config.ts 的文件,并制定启动文件路径。

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

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

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

下面是可以在 app.ts 中使用的示例函数,该函数报告了我们服务器启动成功:

步骤 3: 安装 GraphQL 相关的 Deno 模块

运行以下命令安装所需的依赖项:

步骤 4: 开发 GraphQL 服务器

现在,我们有了 Deno 和 Apollo GraphQL 的基础知识,并已经安装了依赖项。可以按照以下步骤在 Deno 中开发 Apollo GraphQL 服务器:

  • 导入需要的 Deno 模块以及 Apollo Server 模块。
  • 制定类型定义和解析器功能。
  • 设置 ApolloServer 实例以监听 localhost 上的端口 4000

参考下面的示例代码:

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

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

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

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

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

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

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

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

建立客户端

接下来,让我们来创建一个使用 Apollo Client 的 Deno 应用程序。请按照以下步骤操作:

步骤 1: 安装依赖

使用以下命令在本地安装所需的依赖项:

步骤 2: 安装 Apollo GraphQL 相关的 Deno 模块

运行以下命令安装所需的依赖项:

步骤 3: 开始编写代码

现在我们已经安装了所需的依赖项,可以开始编写客户端代码。在下面的代码示例中,我们将查询后端服务器并检索到有关普通字符串的信息。

首先,我们需要创建一个名为 app.ts 的文件,并在其中编写以下内容:

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

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

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

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

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

在上面的示例中,我们使用 createHttpClient 方法来创建一个新的客户端和 URL。使用 gql 函数来定义 GraphQL 查询。 在定义好查询之后,使用客户端的 query 方法来发送查询。最后打印服务器查询的响应。

这是一个简单的示例,你可以根据自己的需要在客户端代码中添加或删除其余查询或函数。

总结

我们已经学习了如何在 Deno 中使用 Apollo GraphQL,从建立 Apollo GraphQL 服务器到建立客户端应用程序,对细节进行了深入讨论并提供了示例代码。这些技术可以大大简化你的开发工作,并且是实现功能强大的 GraphQL API 的关键要素。我们希望这个指南对您有所帮助,促进您建立出令人印象深刻、高效的应用程序。

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

纠错
反馈