如何使用GraphQL Yoga搭建GraphQL服务器

秋天的童话 2019-09-11 ⋅ 15 阅读

GraphQL是一种用于API的查询语言和运行时环境。它提供了一种既强大又灵活的方式来查询和操作数据。GraphQL Yoga是一个基于Express.js的GraphQL服务器,它结合了GraphQL.js、Express和其他一些有用的工具,使构建GraphQL服务器变得更加简单和高效。

在本文中,我们将介绍如何使用GraphQL Yoga搭建GraphQL服务器和解析器。我们将学习如何安装所需的依赖项、设置服务器、定义类型和解析器以及运行查询。

1. 安装依赖项

首先,我们需要在本地项目中安装所需的依赖项。打开终端并导航到你的项目目录,然后运行以下命令:

npm install graphql-yoga

此命令将安装GraphQL Yoga以及它所依赖的所有包。

2. 设置服务器

接下来,在项目中创建一个文件(例如server.js),并在其中导入所需的模块:

const { GraphQLServer } = require('graphql-yoga');

然后,我们将设置一个GraphQL服务器。在server.js文件中添加以下代码:

const typeDefs = `
  type Query {
    hello: String!
  }
`;

const resolvers = {
  Query: {
    hello: () => "Hello, World!",
  },
};

const server = new GraphQLServer({ typeDefs, resolvers });

server.start(() => {
  console.log("GraphQL Server is running...");
});

在上面的代码中,我们定义了一个查询类型Query,其中包含一个名为hello的字段。我们还定义了一个解析器(也称为解析函数),它返回字符串"Hello, World!"。

然后,我们通过创建一个新的GraphQLServer实例并传递类型定义(typeDefs)和解析器(resolvers)来设置服务器。最后,我们使用start方法启动服务器。

3. 运行服务器

现在,我们可以在终端中运行以下命令来启动GraphQL服务器:

node server.js

如果一切顺利,你应该在控制台上看到"GraphQL Server is running..."的消息。

4. 进行查询

我们已经成功设置了GraphQL服务器。现在,我们可以使用GraphQL Playground(默认情况下是可用的)或其他任何支持GraphQL的客户端工具来运行查询。

在GraphQL Playground中,你可以访问http://localhost:4000来与服务器进行交互。在左侧的编辑器中,输入以下查询:

{
  hello
}

然后点击运行按钮。你应该会在右侧的结果面板中看到返回的字符串"Hello, World!"。

至此,我们已经成功使用GraphQL Yoga搭建了一个GraphQL服务器并定义了一个简单的解析器。你可以根据自己的需求扩展和定制类型和解析器。

尽管本文只介绍了GraphQL Yoga的基础知识,但它提供了更多高级功能和可定制选项,如数据加载器、中间件、文件上传等等。你可以查阅GraphQL Yoga的官方文档以深入了解这些功能。

希望你通过本文学到了如何使用GraphQL Yoga搭建GraphQL服务器和解析器。祝你在构建强大的GraphQL API时成功!


全部评论: 0

    我有话说: