-
首先,什么是GraphQL?
GraphQL是Facebook2015年开源的数据查询规范,简单的说就是前端处理接口的一种方式 -
为什么要用GraphQL?.
1、解决数据的冗余和请求次数的冗余 2、有强类型的schema
-
下面是基本初始步骤
先搭建一个服务端的环境,安装基本的依赖,
1.yarn init -y 2.yarn add express babel-cli babel-preset-env babel-preset-stage-0 3.在package.json中配置执行脚本, "scripts": { "dev": "nodemon index.js --exec babel-node --presets env stage-0" }, 4.在根目录建一个index.js文件 5.用Express 创建 GraphQL HTTP 服务 yarn add graphql express-graphql
-
先输出一个word
index.js文件
import express from 'express';
import graphqlHTTP from 'express-graphql';
import MyGraphQLSchema from './MyGraphQLSchema'
const app = express();
app.use(
'/graphql',
graphqlHTTP({
schema: MyGraphQLSchema,
graphiql: true,
}),
);
app.listen(4000);
MyGraphQLSchema.js文件
import {
graphql,
GraphQLSchema,
GraphQLObjectType,
GraphQLString,
} from 'graphql';
var schema = new GraphQLSchema({
query: new GraphQLObjectType({
name: 'RootQueryType',
fields: {
hello: { //hello就是返回接口中的key值
type: GraphQLString,
resolve() {
return 'world'; //返回接口中的value值
},
},
},
}),
});
export default schema
运行后会在浏览器中会显示一个这样的页面,这是因为在index.js文件中graphqlHTTP里面的graphiql属性设置成了true,这是一个可视化的graphQL界面