来聊个简单的议题? ‘为什么要学 GraphQL?’
部落格好读版: https://bit.ly/why-is-graphql
身为网站工程师,您不能不知道什么是 GraphQL,这是一个前端跟后端沟通的 API
Query 语法,大幅改善了前后端的合作模式,这篇会跟大家介绍为什麽麽要学 GraphQL,
以及整理出三大 GraphQL 优势,让大家了解跟传统 Restful API 有什么不同。当然不是
叫开发者舍弃 Restful API,而是根据专案的不同,来决定不同的技术 Stack。像是服务
跟服务之前您说要用 GraphQL,肯定被打枪,而是要用更轻量的 Restful API 或 GRPC。
好了,底下来说明三点 GraphQL 的优势。
影片: https://www.youtube.com/watch?v=00NKSvAraLQ
01:36 一次连线拿回前端所需资料
04:07 根据不同画面拿不同字段资料
06:06 即时 API 文件
1. 一次连线拿回前端所需资料
GraphQL 可以直接将 Query 语法写在一起送到后端,后端全部处理完成后再一次回给前
端,大幅降低 connection 次数。
2. 根据不同画面拿不同字段资料
在 Restful API 世界里,后端会一次回传所有资料,不会管前端需不需要这字段,也就
是前端没有权力决定该拿什么字段,这样会造成很多不必要的网络传输。Restful API
也可以根据不同画面回不同的字段资讯,却造成后端很大的负担。这时候用 GraphQL 解
决了此问题,只要在 Query 语法内定义好要拿的资料即可。
3. 即时 API 文件
大家应该都知道文件没有一天是即时更新的,写 Restful API 要求后端也补上文件,简
直是难上加难,专案在赶的时候,谁还在管文件有没有到最新,这边就要推荐 GraphQL
了,因为只要程式码一动,开发者透过 Client 工具就可以即时知道现在的 API 文件。