2. 项目设置
4m

概述

您很高兴开始进行更改,但让我们确保我们实际上一个要进行更改。在本课中,我们将:

  • 使用 Railway 部署 recipes
  • 更改 的路由 URL。
  • 设置和验证

部署 recipes 子图服务器的副本

本课程重点在于对进行更改,其中涉及对其进行更改!在“GraphOS:基础知识”课程中,我们使用了现有 Poetic Plates API 已部署的版本(这成为我们的第一个,称为 recipes)。现在,让我们确保您拥有要进行更改的自己的副本。

我们将使用 Railway来部署我们的,但您可以随意使用您熟悉的任何其他托管平台。

若要开始,请点击下面的按钮 ⬇️

Deploy on Railway

然后在 Railway 中完成部署设置步骤。

在 Railway 上部署成功?太棒了!最后一步:我们希望 我们在互联网上的公共 URL 上的服务器。为此,我们需要生成一个域名。

转至应用的 设置选项卡,然后点击 生成域名按钮,该按钮位于 域名标题下方。

https://railway.app

Deployment success

这将自动创建我们的生成 URL。几分钟后,你应该会看到显示你的服务器已准备好 的页面。

https://railway.app

Deployment success

任务!

克隆代码库

接下来,我们克隆代码库并确保我们已设置好本地开发环境。

要找到代码库,请转到 Railway 应用的 设置,向下滚动到 服务并找到 源代码库链接。

https://railway.app

Railway app Settings, Service tab, showing where to find the Source repo

点击链接以找到你的 GitHub 代码库副本。

  1. 将该代码库克隆到你的本地环境。

  2. 在代码编辑器中打开它。

  3. 运行npm install在终端中。

  4. 运行 npm run dev。此操作以开发模式启动服务器,这意味着你在文件中所做的更改将自动重新启动服务器。如果一切顺利,当你打开 https://127.0.0.1:4001时,你应该看到准备 架构的 Explorer。

  5. 运行以下测试 并确认你已获得数据!

    query GetRandomRecipe {
    randomRecipe {
    id
    name
    }
    }
任务!

超图设置

我们的子图已经可以用了,接下来让我们设置我们的云端吧!

如果你已经完成了前一门课程,那么你应该已经拥有一个现有的云端!不过目前它使用的是 Apollo 托管的。不过我们要把它修复,使其指向您在前一步骤中通过 Railway 托管的自己部署的 URL。

编辑recipes子图路由 URL

  1. 导航到GraphOS Studio并打开你的的主页。

  2. 转到子图页面。

  3. 您应该已经在列表中看到recipes ,其路由 URL 指向 https://poetic-plates-recipes-api.herokuapp.com/。我们需要将此更改为 您的 Railway URL。

  4. 单击recipes 旁边的三个点,并单击 编辑路由 URL

    https://studio.apollographql.com/

    Studio Subgraphs page, click three dots and select edit routing URL

  5. 粘贴Railway生成的URL,然后点击 更新

    https://studio.apollographql.com/

    Studio Subgraphs page, update routing URL

    更改需要一些时间才能应用并部署到我们的

检查您的超级图

在 Studio 中,导航到 Explorer 页面并粘贴此

query GetRandomRecipe {
randomRecipe {
id
name
readyTime
servings
ingredients {
text
}
}
}

您应该可以获得一些数据!

任务!

Rover 设置

是 Apollo 的命令行界面 (CLI) 工具,可帮助开发者处理并与交互。它是一个非常实用、用途广泛的工具,可用于本地开发和 CI/CD。我们可以使用它来运行检查、将模式发布到模式注册表,以及其他更多操作。

安装 Rover

  1. 打开一个终端,并运行适合您计算机环境的安装命令

    对于 Linux / Mac OS

    curl -sSL https://rover.apollo.dev/nix/latest | sh

    对于 Windows PowerShell 安装程序

    iwr 'https://rover.apollo.dev/win/latest' | iex
  2. 通过在终端中的任意位置运行rover来验证安装是否已完成。

  3. 如果它输出一个使用选项和子命令的列表,,那就太好了!命令行界面已安装并准备就绪。

验证 Rover

我们需要一个 API 密钥来验证 !由于我们开始在本地工作,我们将使用一个 个人 API 密钥。(还有另一种称为 的 API 密钥,用于 CI/CD 环境,稍后我们将了解此类 API 密钥!)

  1. 在 Studio 中,单击右上角的个人资料图片,然后 个人设置

  2. 单击 API 密钥

  3. 单击 创建新密钥

    https://github.com

    Personal API Key generated in Studio

  4. 为其命名,如“Local Dev”。

  5. 复制您的密钥,您将无法再次看见它!

  6. 在终端中,运行

    rover config auth

    然后粘贴您的 API 密钥。

  7. 为检查是否生效,运行

    rover config whoami

    您将在其中看到显示个人资料信息。一切就绪!

任务!

重点

  • 若要创建 ,您需要 API 终结点。这将成为超图的第一个
  • 您可以通过 Studio 子图页面更改 的路由 URL。
  • 在本地开发机器上工作时,您可以使用 验证

接下来

我们已经完成了我们的 ,呼!我们需要的所有部分。这太棒了,一切都运行良好,但我们来这里是为了学习如何放心地对超图进行更改。让我们开始吧。

上一个

分享您对此课程的疑问和评论

本课程目前处于

测试版
.您的反馈有助于我们改进!如果您遇到困难或困惑,请告诉我们,我们将为您提供帮助。所有评论都是公开的,并且必须遵守 Apollo 行为准则。请注意,已经解决或处理的评论可能会被删除。

您需要一个 GitHub 账户才能在下面发布。没有账户? 改在我们的 Odyssey 论坛中发布。