于 10 月 8-10 日加入我们在纽约市的团队,了解关于 GraphQL Federation 和 API 平台工程的最新技巧、趋势和新闻。加入我们 2024 年纽约市 GraphQL Summit
文档
免费开始

验证客户端操作

确认您的模式支持所有客户端操作


您可以通过以下方式确认所有操作都是有效的,针对您的图中的已发布的模式。为了做到这一点,您可以使用apollo client:check命令,此命令来自Apollo CLI

$ apollo client:check
✔ Loading Apollo Project
✔ Checking client compatibility with service
GetTeamGrid: src/components/TeamGrid.jsx:4
FAILURE Field "league" must not have a selection since type "SportsLeague" has no subfields.
4 total operations validated
1 failure

您可以从客户端应用程序的根目录运行此命令。它会递归地扫描您的项目以查找以下内容

  • GraphQL操作gql标签包装
  • 客户端模式扩展gql标签包装

通过将您的已注册的的架构与客户端架构结合,apollo client:check命令可以确认每个定义的操作的形状是否与合并架构的形状相符。

请确保您的项目为Apollo CLI提供图API密钥。这不仅使用Studio验证CLI,还指定了您检查架构的哪个图。

对照特定变体进行检查

在开发过程中,您可能正在执行与本地运行的、架构与生产服务器架构略有不同的服务器上的 GraphQL 操作。由于架构可能不同,因此在将客户端更改推送到该环境之前,始终要检查特定环境的当前架构非常重要。

如果您使用不同的图变体来表示服务器上的每个环境(推荐),您可以像这样对照特定变体的架构检查操作:

$ apollo client:check --variant=production

与持续集成一起使用

您可以将client:check整合到持续交付管道中,以确保在上线前新操作和修改过的操作是有效的。

下面是一个包含此命令的Circle CI配置示例

config.yml
version: 2
jobs:
# ...other jobs...
# Define a separate job for each environment you validate against.
check_against_staging:
docker:
- image: circleci/node:12
steps:
- checkout
- run: npm install
# CircleCI needs global installs to be sudo
- run: sudo npm install --global apollo
# This command authenticates using the `APOLLO_KEY` environment variable.
# Don't forget to provide your API key in it.
- run: npx apollo client:check --variant=staging
上一页
安装
下一页
迁移到Rover
评分文章评分在GitHub上编辑Edit论坛Discord

©2024Apollo Graph Inc.,即 Apollo GraphQL。

隐私政策

公司