欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

GraphQL - 使用express + GraphQL

程序员文章站 2022-03-09 22:52:15
...

2019GraphQL入门到精通  https://www.bilibili.com/video/BV1Ab411H7Yv?from=search&seid=16813706797539177189

视频 3

express + GraphQL 代码介绍 (helloworld.js)

GraphQL - 使用express + GraphQL
 

helloworld.js

const express = require('express');
const graphqlHTTP = require('express-graphql');
const {buildSchema} = require('graphql');
// 定义schema,查询和类型
const schema = buildSchema (`
    type Account {
        name: String
        age: Int
        sex: String
        department: String
    }
    type Query {
        hello: String
        accountName:String
        age:Int
        account:Account
    }
`);
// 定义对应的处理器
const root = {
    hello: () => {
        return 'Hello World.'
    },
    accountName: () => {
        return 'Jim'
    },
    age: () => {
        return 18
    },
    account: () => {
        return { //可以不请求,但是必须都返回
            name: 'Jack',
            age: 25,
            sex: '男',
            department: 'IT'
        }
    }
}

const app = express();

app.use('/graphql', graphqlHTTP({
    schema: schema,
    rootValue: root,
    graphiql: true /* true代表需要调试 */
}))

app.listen(3000);

运行实例:

Step1: node helloworld.js

Step2: 打开浏览器,输入localhost:3000

Step3: 在浏览中(下图)输入:query { hello}, 结果如下图所示。

 

GraphQL - 使用express + GraphQL

命令行相关命令

1. npm init -y
2. npm install express --save
3. npm install graphql --save
4. npm install express-graphql --save
5. node helloworld.js

注:每次更新helloworld.js之后,需要重新执行命令node helloworld.js (首先执行ctrl+c,停止运行helloworld.js)

相关标签: GraphQL