如何在 sangria-graphql 中执行突变?
Posted
技术标签:
【中文标题】如何在 sangria-graphql 中执行突变?【英文标题】:How to perform Mutation in sangria-graphql? 【发布时间】:2017-06-07 14:40:58 【问题描述】:目前,我正在从 here. 学习 sangria-graphql 但是,我找不到任何有关 Mutation(添加、更新、删除)的文档。此外,谷歌不会帮助我太多。那么,你们能给我提供什么好的资源吗?
【问题讨论】:
【参考方案1】:GraphQL 中的突变被建模为对象类型,就像 Query
类型一样。 GraphQL 模式有 3 个被建模为对象类型的***入口点:
Query
type - 查询的根
Mutation
type - 突变的根源
Subscription
type - 订阅的根目录
当您创建方案时,您可以提供全部 3 个:
Schema(QueryType, Some(MutationType), Some(SubscriptionType))
否则,突变的工作方式与查询非常相似,只是突变***字段是按顺序执行的(保证不会并行执行)。
有关更多信息和示例,我建议您查看sangria-subscriptions-example,它演示了除正常查询之外的突变和订阅。我建议您从架构定义开始:
https://github.com/sangria-graphql/sangria-subscriptions-example/blob/master/src/main/scala/schema.scala#L87
【讨论】:
我发现以下链接中的示例比此答案中引用的示例更有用:howtographql.com/graphql-scala/8-mutations以上是关于如何在 sangria-graphql 中执行突变?的主要内容,如果未能解决你的问题,请参考以下文章
如何在突变 graphQL Playground 中传递变量?