9

我必须在 GraphQL 中使用 Java 对象来响应和请求。

我是否必须在 GraphQL 模式文件中将每个对象写为“输入”和“类型”两次?用于在请求和响应中获取该对象。

我应该使用输入和类型两次定义同一个对象吗?

文件:test.graphqls

input Employee {
  id: Integer
  name: String
  dept: String
  active: String
}

type Employee {
  id: Integer
  name: String
  dept: String
  active: String
}
4

1 回答 1

6

是的,因为输入和输出类型的类型系统规则非常不同。输入类型不能是联合,不能实现接口等,所以你不能简单地为这两个目的使用相同的定义。

此外,您必须为每种类型指定一个唯一的名称。所以它应该是EmployeeEmployeeInput例如。

于 2018-02-14T13:08:15.720 回答