导入 graphql.js(GraphQL 使用 JavaScript 实现的版本)
const { graphql, buildSchema } = require("graphql");
导入 express 和 express-graphql,express-graphql 是 graphql 用于与 express 结合使用的中间件包
const express = require("express");
const { graphqlHTTP } = require("express-graphql");
const app = express();
定义 graphQL 的 schema 和 resolver
// 定义schema
const schema = buildSchema(`
type Query {
foo: String
}
`);
// 定义resolver
const rootValue = {
foo() {
return "bar";
},
};
挂载中间件,启动 web 服务
app.use(
"/graphql",
graphqlHTTP({
schema,
rootValue,
// 开启浏览器的GraphQL IDE调试工具
graphiql: true,
})
);
app.listen(5000, () => {
console.log("GraphQL Server is running at port 5000");
});