问:编写使用 mysql2 查询的 GraphQL 解析器

Posted

技术标签:

【中文标题】问:编写使用 mysql2 查询的 GraphQL 解析器【英文标题】:Q: Writing GraphQL resolver that uses mysql2 query 【发布时间】:2021-06-07 14:13:42 【问题描述】:

菜鸟问题。我正在尝试编写一个 Apollo Server GraphQL 解析器,它将从 mysql 数据库中查询并返回一个用户。

这是我目前所拥有的:

const UserQueries = 
  user: (_, args,  pool ) => 
    let data = ;

    pool.query(
      "SELECT * FROM user_table WHERE `id` = ?",
      [args.id],
      (err, rows) => 
        if (err) throw err;
        else 
          data.id = rows[0].id;
          data.name = rows[0].name;
          data.username = rows[0].username;
          data.email = rows[0].email;
        
      
    );
    return data;
  ,
;

pool是mysql2的连接池。如果我在 else 语句中进行控制台登录,我将从数据库中获取正确的数据。问题是我不能让它进入那个变量。如果我将 return 语句移到 else 语句中,它仍然不起作用。

绝对是一个菜鸟问题,但我完全被卡住了。谢谢。

【问题讨论】:

【参考方案1】:

我认为它应该可以工作,您应该检查您的 typedef,响应(数据对象字段)是否与相应的 typedef 字段匹配。

【讨论】:

以上是关于问:编写使用 mysql2 查询的 GraphQL 解析器的主要内容,如果未能解决你的问题,请参考以下文章

使用 Apollo gql 编写 WHERE GraphQL 查询

如何编写 GraphQL 查询以使用 GatsbyJS 从 mdx 文件中获取图像?

我们可以在 GraphQL 中编写 Mongodb 查询吗?

如何使用`django-filters`编写将在整数字段上使用范围过滤器的GraphQL查询?

如何在不编写长查询的情况下查询所有 GraphQL 类型字段?

如何在不编写长查询的情况下查询所有 GraphQL 类型字段?