我应该在 graphql 模式文件中将每个对象写两次作为“输入”和“类型”吗

Pra*_*nav 9 graphql graphql-java

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

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

我应该使用 input 和 type 两次定义同一个对象吗?

文件: test.graphqls

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

type Employee {
  id: Integer
  name: String
  dept: String
  active: String
}
Run Code Online (Sandbox Code Playgroud)

kaq*_*qao 6

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

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