我正在使用一个特定的GraphQL端点,虽然我提供了一个干净的JSON结构作为查询,当我得到结果时,我得到"edge"和"node"标签.似乎它正在污染我的数据而没有明显的好处.为什么它存在,是否有可能摆脱那些更快,更简单的数据解析?
p0k*_*k8_ 47
让我们从简短的单词开始简短介绍
GraphQl继电器规格
连接:
edges,pageInfo...pageInfo将包含hasNextPage,hasPreviousPage,startCursor,endCursor
hasNextPage 将告诉我们是否有更多可用边缘,或者我们是否已达到此连接的末尾.记录数组:边缘
GraphQLList但没有像pagination这样的功能,只有对象数组(数据)每个边缘都有
node:记录或数据cursor:base64编码的字符串,以帮助中继分页https://facebook.github.io/relay/graphql/connections.htm
节点:
connectionArgs(first, last, after, before)Relay Pagination的工作原理如下
获取集合中的所有对象,并根据first/lastx记录返回切片,通过connectionArgs使用
after/before 用于向GraphQL服务器指示使用来自节点的游标所需的切片(数据)的数量
还有更多的事情要考虑像nodeDefinitions,globalFieldId,nodeInterfaces
https://github.com/graphql/graphql-relay-js#object-identification
ser*_*ays 21
GraphQL 代表图形查询语言,有两部分:服务器和客户端。服务器有效地将图形结构放在数据库前面,并且您的查询正在遍历该图形。
在计算机科学领域:
将所有这些结合在一起,GraphQL 查询有效地要求 GraphQL 服务器实例遍历其数据图并找到该数据的某种表示形式。您将在查询中看到edges和 ,node因为您实际上是在查看图表中的这些条目。
典型的记录查询allXYZ如下所示:
{
_allXYZ {
edges {
node {
// your data shape will be in here
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17530 次 |
| 最近记录: |