如何在 sangria-graphql 中执行突变?

How to perform Mutation in sangria-graphql?

目前,我正在从 here. 学习 sangria-graphql 但是,我找不到任何关于 Mutation(添加、更新、删除)的文档。另外,google 对我帮助不大。那么,各位大佬能不能提供点好的资源呢?

GraphQL 中的突变被建模为对象类型,就像 Query 类型一样。 GraphQL 架构有 3 个 top-level 个建模为对象类型的入口点:

  • Query 类型 - 查询的根
  • Mutation 类型 - 突变的根
  • Subscription 类型 - 订阅的根

创建方案时,您可以提供全部 3 个方案:

Schema(QueryType, Some(MutationType), Some(SubscriptionType))

否则,突变的工作方式与查询非常相似,除了突变 top-level 字段是顺序执行的(保证不会并行执行)。

有关更多信息和示例,我建议您查看 sangria-subscriptions-example,它除了正常查询之外还演示了突变和订阅。我建议您从模式定义开始:

https://github.com/sangria-graphql/sangria-subscriptions-example/blob/master/src/main/scala/schema.scala#L87