GraphQL 是一种用于 API 的查询语言,可以帮助前端开发人员更好地定义和获取与服务器交互的数据。使用 Node.js 和 Express 可以轻松地创建一个 GraphQL 服务器,本文将详细介绍如何实现它。
安装必要的依赖
首先,我们需要安装一些必要的依赖项,包括 Express、GraphQL、graphql-tools 和 body-parser:
$ npm install express express-graphql graphql graphql-tools body-parser
创建 GraphQL Schema
GraphQL Schema 是定义 GraphQL API 的核心部分。我们将使用 graphql-tools 库来创建一个基本的 schema。
在项目根目录下创建一个名为 schema.js
的文件,并添加以下代码:
-- -------------------- ---- ------- ----- - -------------------- - - ------------------------- ----- -------- - - ---- ----- - ------ ------ - -- ----- --------- - - ------ - ------ -- -- ------ ------- - -- -------------- - ---------------------- --------- --------- ---
代码中定义了一个 Query
类型,该类型具有一个 hello
字段,该字段返回字符串 "Hello world!"。
创建 Express 应用程序
接下来,创建一个 Express 应用程序,并在其中启用 GraphQL API。在项目根目录下创建一个名为 app.js
的文件,并添加以下代码:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- ---------- - ----------------------- ----- - --------------- --------------- - - ---------------------------------- ----- ------ - -------------------- ----- --- - ---------- ------------------- ------------------ ---------------- ------ ---- -------------------- ----------------- ------------ ---------- ---- ---------------- -- -- ------------------- ------- -- ---------------------------------
代码中创建了一个 Express 应用程序,并在 /graphql
路由中使用 graphqlExpress
中间件来启用 GraphQL API。在 /graphiql
路由中,使用 graphiqlExpress
中间件来启用 GraphiQL 工具。最后,应用程序在本地的端口 3000 上启动。
运行 GraphQL 服务器
将项目文件转到项目根目录,并使用以下命令运行服务器:
$ node app.js
打开浏览器,访问 http://localhost:3000/graphiql
,如果一切正常,您将看到 GraphiQL 工具在屏幕上。
在 GraphiQL 中,在左侧的查询编辑器中输入以下查询:
query { hello }
然后单击右上角的运行按钮。应该会在右侧的响应窗口中会看到以下输出:
{ "data": { "hello": "Hello world!" } }
这就是我们的第一个 GraphQL 查询,返回文本 “Hello world!” 。
结论
使用 Node.js 和 Express 创建一个简单的 GraphQL 服务器非常简单。本文介绍了如何安装必要的依赖项、如何定义 GraphQL Schema、如何使用 Express 启用 GraphQL API,并提供了可运行的示例代码。
GraphQL 是一个非常强大的 API 查询语言和类型系统,可以轻松地定义和检索需要的数据,这使得开发出现了巨大的变革。我们建议您探索 GraphQL 的其他功能,并将其集成到自己的开发项目中。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6712e8aead1e889fe2093704