GraphQL 是一种用于 API 的查询语言,它可以让客户端精确地获取需要的数据,避免了传统 RESTful API 中的“过度获取”和“欠获取”的问题。Deno 是一个新兴的 JavaScript 运行时环境,它提供了一种更加安全和现代化的方式来编写服务器端应用程序。在本文中,我们将介绍如何在 Deno 中使用 GraphQL 进行数据查询。
安装依赖
首先,我们需要安装一些必要的依赖。在 Deno 中,我们可以使用 import
语句来导入第三方库。在本文中,我们将使用以下库:
graphql
:用于解析和执行 GraphQL 查询。oak
:用于创建 Web 服务器和路由器。
可以通过以下命令来安装这些依赖:
deno install --allow-net --allow-read https://deno.land/x/oak/mod.ts deno install --allow-net https://cdn.skypack.dev/graphql
创建服务器
接下来,我们将创建一个简单的 Web 服务器,用于处理 GraphQL 查询。我们将使用 oak
来创建服务器和路由器,并将路由器绑定到服务器上。以下是完整的代码:
-- -------------------- ---- ------- ------ - ----------- - ---- --------------------------------- ------ - ----------- - ---- ---------------------------------- ----- --- - --- -------------- ----- ------ - - ---- ----- - ------ ------ - -- ----- --------- - - ------ -- -- ------- -------- -- --------------------- ------- ---------- --------- ----- ---- ----- ------------ ----- ---- ---
在上面的代码中,我们定义了一个名为 schema
的 GraphQL schema,它包含一个名为 hello
的查询字段,该字段返回一个字符串。我们还定义了一个名为 rootValue
的对象,它包含了 hello
方法的实现。最后,我们使用 graphqlHTTP
中间件将路由器绑定到服务器上,并将 graphiql
选项设置为 true
,以启用 GraphQL Playground。
发送查询
现在,我们可以使用 GraphQL Playground 来发送查询。在浏览器中打开 http://localhost:8000/graphql
,您应该会看到一个交互式的 GraphQL Playground 界面。在左侧的编辑器中,输入以下查询:
{ hello }
然后,单击右上角的“运行”按钮。您应该会看到以下响应:
{ "data": { "hello": "Hello, world!" } }
恭喜!您已经成功地使用 Deno 和 GraphQL 进行了一个简单的数据查询。
结论
在本文中,我们介绍了如何在 Deno 中使用 GraphQL 进行数据查询。我们首先安装了必要的依赖,然后创建了一个简单的 Web 服务器,并使用 GraphQL Playground 发送了一个查询。希望这篇文章对您有所帮助,让您更加了解如何在 Deno 中使用 GraphQL。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/67554f783af3f99efe47e7c3