如何解决内容丰富的GraphQL端点:如何检索内容类型的所有条目 查询单个id 查询所有Posts
{
Post {
name
}
}
在尝试检索内容类型上的所有条目时,仅给出以下错误:
"Argument \"id\" of required type \"String!\" was not provided."
因为id
字段是必填字段。那么如何获取内容类型的所有条目?
参考:https://www.contentful.com/developers/docs/references/graphql/
解决方法
来自文档here:
产生的Query对象公开了两个字段,您可以用来查询该类型的内容:一个字段用于获取单个内容文档(在示例中为
friendlyUser
),另一个字段可以查询所有类型的内容(friendlyUserCollection
。
因此,对于要检索其所有条目的任何资源,需要在其ID的末尾附加Collection
,然后使用items
字段检索所有条目。如:
{
PostCollection {
items {
name
}
}
}
除了文档,您还可以在相应的GraphiQL实例上查看所有可用资源,这可能非常有用:
https://graphql.contentful.com/content/v1/spaces/{SPACE_ID}/explore?access_token={ACCESS_TOKEN}
搜索或选择Query
以查看所有架构:
查询单个id
我认为您可以在GraphQL游戏机中尝试
http://localhost:8000/___graphql
query PostById($id: String!) {
contentfulPost(id: { eq: $id }) {
name
}
}
并添加一个查询变量
{
"id": "my-awesome-id"
}
查询所有Posts
然后如何获取内容类型的所有条目?
在GraphQL游乐场上,您应该能够执行类似的操作
{
allContentfulPost {
nodes {
name
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。