把 REST 想成政务大厅里一排固定窗口:
- 1 号窗口查住户
- 2 号窗口查工单
- 3 号窗口查设备
- 4 号窗口查维修记录
而 GraphQL 更像一个智能问询总台:
- 你只到一个总台
- 你明确说要哪些信息
- 总台自己去联系背后的各个部门
- 最后按你要求的结构一次性回给你
ASCII 对比图:
REST
客户端
├── GET /residents/1
├── GET /residents/1/tickets
└── GET /devices/9
GraphQL
客户端
└── POST /graphql
“给我住户 1 的姓名、未关闭工单、每个工单对应设备名”GraphQL 的核心价值,不是“语法新”,而是:
- 客户端可以精确点单
- 服务端用 Schema 把可问、可改、可返回的内容讲清楚
- 一次请求就能把跨多个后端系统的数据组织起来
所以你学 GraphQL,先别背语法。先记住一句话:
GraphQL 就是一套“智能问询总台协议”。