为啥 graphql 不接受我在查询中传递的参数?

Posted

技术标签:

【中文标题】为啥 graphql 不接受我在查询中传递的参数?【英文标题】:Why does graphql not accept the parameters that I pass in the query?为什么 graphql 不接受我在查询中传递的参数? 【发布时间】:2021-11-24 09:53:21 【问题描述】:

我正在使用这个库 https://www.npmjs.com/package/json-graphql-server 进行练习,我只是想获得正确的查询以便能够从前端创建一个 crud,但我不明白如何添加新帖子,因为它不接受它作为查询变量的参数。显然它无法识别我发送的 post 参数,但在文档的右侧,我已将所有必需的字段放入该变量中

mutation addPst($post: PostInput!)
    createPost(post: $post)    
        title       
    

查询变量:


    "post": 
    "id": "100",
        "title": "Curso de GraphQL",
        "views": 0,
        "user_id": 123  
    

示例: https://stackblitz.com/edit/json-graphql-server-nmctdj

【问题讨论】:

你在createPost 突变中看到[in docs] post arg 吗? 【参考方案1】:

您的变异似乎与您发布的架构文档不符。

架构显示 createPost 突变采用标题、视图和 ID 字段,而您正在传递“post”对象。

尝试将突变重写为:

mutation addPst($title: String!, $views: Int!, $user_id: ID!)
    createPost(title: $title, views: $views, user_id: $user_id)    
        title       
    

【讨论】:

以上是关于为啥 graphql 不接受我在查询中传递的参数?的主要内容,如果未能解决你的问题,请参考以下文章

用于传递变量的 GraphQL 查询参数语法

AppSync,使用 graphql-tag 将数组作为输入参数传递

Unity 中的 GraphQL 查询

在 GraphQL 中将参数从根传递到子查询

传递参数时出现GraphQL语法错误

在GraphQL / Rails中如何在query_type中传递参数?