GraphQL 是一种用于 API 的查询语言,它提供了更加灵活、高效和强大的数据获取方式。而 Deno 则是一个安全的 JavaScript 和 TypeScript 运行时环境,它能够让开发者更加方便地编写和运行 JavaScript 代码。在本文中,我们将介绍如何使用 Deno 进行 GraphQL API 开发的方式和技巧。
安装 Deno
首先,我们需要安装 Deno。可以通过以下命令在终端中安装 Deno:
$ curl -fsSL https://deno.land/x/install/install.sh | sh
安装完成后,可以通过下面的命令验证 Deno 是否安装成功:
$ deno --version
安装 GraphQL
接下来,我们需要安装 GraphQL。可以通过以下命令在终端中安装 GraphQL:
$ deno install --allow-net --allow-read https://deno.land/x/graphql/mod.ts
安装完成后,可以通过下面的命令验证 GraphQL 是否安装成功:
$ graphql --version
编写 GraphQL API
现在,我们可以开始编写 GraphQL API 了。首先,创建一个名为 server.ts
的文件,并添加以下代码:
// javascriptcn.com 代码示例 import { Application, Router } from "https://deno.land/x/oak/mod.ts"; import { applyGraphQL, gql } from "https://deno.land/x/graphql/mod.ts"; const typeDefs = gql` type Query { hello: String } `; const resolvers = { Query: { hello: () => "Hello World!", }, }; const app = new Application(); const GraphQLService = await applyGraphQL({ typeDefs, resolvers, }); const router = new Router(); router.post("/graphql", GraphQLService); app.use(router.routes()); app.use(router.allowedMethods()); console.log("Server start at http://localhost:8080"); await app.listen({ port: 8080 });
在上面的代码中,我们使用了 Oak 框架来搭建 HTTP 服务器,并使用了 applyGraphQL
函数来创建一个 GraphQL 服务。typeDefs
定义了 GraphQL 的类型和查询语句,resolvers
则定义了查询语句的实现。在这个例子中,我们定义了一个名为 hello
的查询语句,并返回了一个字符串 "Hello World!"
。
运行 GraphQL API
最后,我们可以使用以下命令在终端中运行 GraphQL API:
$ deno run --allow-net server.ts
运行成功后,我们可以访问 http://localhost:8080/graphql
来测试 GraphQL API。在 GraphiQL 中,输入以下查询语句:
query { hello }
点击运行按钮后,应该会返回以下结果:
{ "data": { "hello": "Hello World!" } }
总结
在本文中,我们介绍了如何使用 Deno 进行 GraphQL API 开发的方式和技巧。通过安装 Deno 和 GraphQL,编写 GraphQL API,以及运行 GraphQL API,我们可以更加方便地使用 GraphQL 来获取数据。希望本文对你有所帮助,谢谢阅读!
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/6559dcefd2f5e1655d4480f3