Node.js GraphQL:构建灵活的 API
使用 Apollo Server 创建类型安全的 GraphQL API。 · 难度:入门 · +15XP
GraphQL 简介
GraphQL 是一种 API 查询语言,允许客户端精确获取所需数据,避免过度获取(over-fetching)和获取不足(under-fetching)。
核心概念
- Schema:定义数据类型和操作
- Query:查询数据
- Mutation:修改数据
- Resolver:解析器函数
基本示例
const { ApolloServer, gql } = require('apollo-server');
const typeDefs = gql
type Book {
title: String
author: String
}
type Query {
books: [Book]
}
;
const resolvers = {
Query: {
books: () => [{ title: 'Node.js 实战', author: '张三' }],
},
};
const server = new ApolloServer({ typeDefs, resolvers });
server.listen().then(({ url }) => console.log(Server ready at ${url}));
练习提示
在下方代码中添加一个 Mutation 操作,允许添加新书。