【发布时间】:2021-06-22 12:57:39
【问题描述】:
假设我们有一个 GraphQL API,它可以返回一个具有 Id 和 Name 属性的对象 Entity,我请求了 Name强>仅:
query {
entities {
name
}
}
然后它返回
{
"data": {
"entities": [
{
"name": "Name1"
},
{
"name": "Name2"
}
]
}
}
但是,如果我只想将实体名称作为标量类型呢?换句话说,我想要这样的东西:
{
"data": {
"entities": [
"Name1",
"Name2"
]
}
}
是否可以在不更改 GraphQL API 端的情况下获得这样的结果? Aliases, Fragments 等。GraphQL 有很多内置的查询能力,但是没有一个已知的我可以将复杂的对象返回为标量类型。
【问题讨论】:
-
共享实体的类型定义架构?
-
entities(): [Entity] 实体: id: int!名称:字符串
-
您可以使用值 Name1、Name2.. 创建枚举类型,但您需要更改服务器端以让 graphql 知道如何处理枚举
-
谢谢,但我有几个客户有不同的需求,试图找到不改变的方式,GraphQL 是灵活的,但不是在所有情况下:-(
标签: graphql