在开始之前,您应该安装 Node v6,尽管示例在之前版本的 Node 中也应该大部分可以工作。在本指南中,我们不会使用任何需要转译的语言特性,但我们会使用一些 ES6 特性,例如 Promises、classes 和 fat arrow functions,所以如果您不熟悉它们,您可能需要先阅读一下。
要创建一个新项目并在当前目录中安装 GraphQL.js
npm initnpm install graphql --save
为了处理 GraphQL 查询,我们需要一个定义 Query
类型的模式,并且我们需要一个 API 根,其中包含一个名为“解析器”的函数,用于每个 API 端点。对于一个只返回“Hello world!”的 API,我们可以将这段代码放在一个名为 server.js
的文件中
var { graphql, buildSchema } = require("graphql")
// Construct a schema, using GraphQL schema languagevar schema = buildSchema(` type Query { hello: String }`)
// The rootValue provides a resolver function for each API endpointvar rootValue = { hello: () => { return "Hello world!" },}
// Run the GraphQL query '{ hello }' and print out the responsegraphql({ schema, source: "{ hello }", rootValue,}).then(response => { console.log(response)})
如果您使用以下命令运行它
node server.js
您应该会看到打印出来的 GraphQL 响应
{ data: { hello: "Hello world!" }}
恭喜 - 您刚刚执行了一个 GraphQL 查询!
对于实际应用,您可能希望从 API 服务器运行 GraphQL 查询,而不是使用命令行工具执行 GraphQL。要将 GraphQL 用于 HTTP 上的 API 服务器,请查看 运行 Express GraphQL 服务器。