15-React+GraphQL库

参考:
- GraphQL 官网:https://graphql.cn/
- GraphQL 官方文档:https://graphql.cn/learn/
1. GraphQL
1.1 介绍
GraphQL 是 Facebook 开发的一种数据查询语言,在 2015 年公开发布,它是 REST API 的替代品。
GraphQL 既是一种用于 API 的查询语言,也是一个满足你查询数据的运行时。它对你的 api 中的数据提供了一套易于理解的完整描述,使得客户端能够准确的获得它需要的数据,而且没有任何冗余,也让 api 更容易的随着时间的推移而演进。
特点:
- 请求需要的字段数据,不多不少
- 获取多个资源,只需要一个请求
- 描述所有可能类型的系统,便于维护,根据需求平滑演进,添加或隐藏字段。
- restful 一个接口只能返回一个资源,graphql 一次可以获取多个资源
- restful 用不同的 url 来区分资源,graphql 用类型区分资源
1.2 安装
前置:npm init
安装:npm i graphql@14 express@4 express-graphql@0.7 mongoose@5
版本:graphql 14.0.2,express 4.16.4,express-graphql 0.7.1,mongoose 5.13.14
1.3 基本使用
1 | |
使用 node/node-dev/nodemon 启动后就可以请求接口 http://localhost:3000/graphql

1.4 查:自定义类型与传参
1 | |

1.5 增删改
1 | |

2. GraphQL + MongoDB
2.1 mongoose
前置:找到 mongod.exe 文件目录,并在需要存放数据的位置建 db 目录。
启动 mongoDB 数据库服务端:*.\mongod.exe –dbpath=E:\work\webProjects\react\code\react-graphql\db*
1 | |

2.2 ajax 请求
graphql-server.js
1 | |
public/index.html - 普通 html 页面的增删改查操作
1 | |
15-React+GraphQL库
https://janycode.github.io/2022/05/22/04_大前端/07_React/15-React+GraphQL库/