代码之家  ›  专栏  ›  技术社区  ›  FBryant87

GraphQl可以用来请求完整的对象,而不是字段吗?

  •  0
  • FBryant87  · 技术社区  · 4 年前

    我们有一个场景,其中我们有多个嵌套对象,例如:

    • 一棵树可能有树枝
    • 树枝可能结出果实
    • 水果可能有 种子

    我们的Api有许多不同需求的消费者:

    • 有些人只想了解这棵树本身。
    • 有些人想了解这棵树,以及树内的树枝。
    • 有些人想了解某些树木,以及这些树木的所有树枝、果实和种子。

    因此,理想情况下,我们会有一些类似GraphQl的端点,它允许您指定 对象 您想要并筛选这些:

    • {trees}//只获取树
    • {trees:branches}//获取树及其分支

    但从我所看到的GraphQl是关于指定 字段 你想要的不是对象。因此,对于树查询,您需要指定希望接收的所有树和分支属性等。

    这使得它在后端更加尴尬,因为我们需要为每个可以请求的字段都有一个映射层,并将其映射到相应的数据库字段中以构建查询。

    是否存在GraphQL的用例,它们只是请求查询中的高级对象,而API只是返回这些对象及其上的每个属性?

    0 回复  |  直到 4 年前
    推荐文章