首页 > 解决方案 > 具有不同 API 版本的客户端上的 graphql 查询

问题描述

我正在构建一个应该能够与 API 的多个版本对话的 Typescript 客户端。

例如,有一个类型User,有 2 个版本:v0.1 和 v0.2。在 v0.2 版本中,类型上有一个新字段,User称为address.

作为 API 的客户端,我想查询User类型,但使用相同的查询与 API 的两个版本进行对话。我期望的是 API v0.1 将为这个新属性返回 null。

有没有办法做到这一点?目前我收到此错误:

GraphQL error: Field 'address' doesn't exist on type 'User'

如果不可能,这是否意味着对于 API 的每次更改,如果客户端想要向后兼容,它需要为每个版本存储不同的模式?

标签: graphqlgraphql-js

解决方案


推荐阅读