Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于字段的graphql解析_Graphql - Fatal编程技术网

基于字段的graphql解析

基于字段的graphql解析,graphql,Graphql,假设我们在一堆RESTAPI之上构建了一个graphql服务器,我们有两个端点,行业和公司。我们将它们全部打包到graphql服务器中,该服务器允许我们执行如下查询: {industry (name: "Education") {companies {id}}} 它将给我们: {data: {industry:{companies: [{id:1}, {id:2}]}}} 一个简单的查询 如果我们问的不止这些,比如说我们问公司的名字,它就会回来 {data: {industry:{compa

假设我们在一堆RESTAPI之上构建了一个graphql服务器,我们有两个端点,行业和公司。我们将它们全部打包到graphql服务器中,该服务器允许我们执行如下查询:

{industry (name: "Education") {companies {id}}}
它将给我们:

{data: {industry:{companies: [{id:1}, {id:2}]}}}
一个简单的查询

如果我们问的不止这些,比如说我们问公司的名字,它就会回来

{data: {industry:{companies: [{id:1, name: 'a'}, {id:2, name:'b'}]}}}
然而,在屏幕后面,这两个查询之间有很大的区别。第一个只要求id,哪个行业端点已经提供了它。第二个请求输入姓名,您必须向公司端点打额外的电话才能获取该姓名

一种方法是始终向公司端点发送调用,即使用户只要求ID,但我在想,我们是否可以让解析器函数知道用户要求的字段,并做出更明智的决策


但我不确定这是否符合最佳实践。感谢您的帮助

你解决了吗?你解决了吗?