gpt4 book ai didi

graphql - Mutation 和 Query 的区别

转载 作者:行者123 更新时间:2023-12-03 15:07:11 27 4
gpt4 key购买 nike

我在看 GraphQL Docs关于 QueryMutation .但是,缺乏显示差异的真实示例,最重要的是 - 何时使用它们是合适的。
非常感谢您的解释。

最佳答案

短的
按照惯例:

  • Query — 用于查询数据(SELECT 操作)
  • Mutation — 用于创建新数据和更新/删除现有数据 ( INSERT , UPDATE , DELETE )

  • 详细的
    技术上 可以实现任何 GraphQL 查询以导致数据写入 .但是有一个约定,任何导致写入的操作都应该通过突变显式发送。
    除了语义上的不同,还有 一个重要的技术差异 : Query字段 可以并行执行 由 GraphQL 引擎同时 Mutation顶级字段 必须串行执行 根据规范:

    If the operation is a mutation, the result of the operation is the result of executing the mutation’s top level selection set on the mutation root object type. This selection set should be executed serially.

    It is expected that the top level fields in a mutation operation perform side‐effects on the underlying data system. Serial execution of the provided mutations ensures against race conditions during these side‐effects.


    来源: https://graphql.github.io/graphql-spec/draft/#sec-Mutation

    关于graphql - Mutation 和 Query 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48003767/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com