6 搭建GraphQL服务器之设置服务器与中间件
在上一篇中,我们选择了合适的 Node.js 框架,为我们的 GraphQL 服务器打下了基础。这一篇,我们将深入地探讨如何设置服务器与中间件,以确保我们能够正确地处理 GraphQL 请求。
1. 初始化项目
首先,确保你已经创建并进入了你的项目目录。然后,需要安装一些必要的依赖。我们将使用 Express
框架和 Apollo Server
来搭建我们的 GraphQL 服务器。
1 | npm init -y |
2. 设置基础服务器
接下来,创建一个新的文件,命名为 server.js
,并在其中设置基本的 Express 服务器和 Apollo Server。
1 | // server.js |
代码分析
- 在上面的代码中,我们首先引入了必要的模块,并创建了一个 Express 应用。
- 接着我们用
ApolloServer
创建了一个新的 Apollo Server 实例,并定义了一个简单的 GraphQL 架构,包括一个hello
查询。 - 然后使用
server.applyMiddleware({ app })
将 Apollo Server 作为中间件添加到 Express 应用中。这样,当我们访问/graphql
路由时,Apollo Server 将处理这些请求。 - 最后,我们启动了应用并监听 4000 端口或环境变量设置的端口。
3. 添加中间件
除了设置基本的 Apollo Server,我们还可以添加其他中间件。例如,你可以添加一些日志或认证中间件。
1 | // 在 server.js 文件中,引入中间件 |
代码分析
在上面的代码片段中,我们引入了 morgan
中间件,并将其应用于我们的 Express 服务器。这将帮助我们在控制台中查看每个请求的日志,非常有助于调试。
4. 测试 GraphQL 服务器
启动服务器后,打开浏览器,访问 http://localhost:4000/graphql
,你应该会看到 Apollo Server 提供的 GraphQL Playground。你可以输入以下查询来测试我们的设置:
1 | { |
如果服务器设置正确,你应该会看到以下响应:
1 | { |
5. 总结
通过上述步骤,我们成功地设置了一个基础的 GraphQL 服务器与中间件。我们使用了 Express
和 Apollo Server
来处理 GraphQL 请求,同时还添加了日志中间件以便于调试。在下一篇中,我们将深入定义 GraphQL 架构,并创建查询类型,以实现更复杂的数据交互。
确保在继续之前,你的服务器能够正常运行,并请随时回顾之前的步骤!
6 搭建GraphQL服务器之设置服务器与中间件