GraphQL有啥用?

Posted Python程序员

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GraphQL有啥用?相关的知识,希望对你有一定的参考价值。

看了上面的文章,相信你心中会有疑问,这个GraphQL有啥用?感觉比 REST API 还麻烦。这里小编简单解释一下,GraphQL有下面两个优势,使得它越来越受到业界的重视:


1、请求的字段由请求方决定,大幅降低了前后端协作成本。


目前团队协作开发一个非常常见的场景就是,前端每次做小改动,后端都要配合改动。虽然代码改动不难,但是反反复复非常烦,后台开发有怨气难出。而像GraphQL这样的请求方式,返回哪些字段由前端来决定,后台的工作一下子轻松了不少。


第一篇文章中GraphSQL请求的例子


2、避免了“过度获取”。


为了解决第一点中后台配合前端很麻烦的问题,目前大多数后台开发的做法是API中尽量返回全面的信息,这样前端很多修改,就不需要后台跟着修改了。但是这样做的问题是,多返回了很多不必要的信息,最终带来了更大的流量消耗和访问延迟。而GraphQL由于返回内容是前端确定的,所以不存在返回多余信息的问题。这样的方案,面对现在流行的多端(H5, PC Web, 安卓,ios)一服务器结构,是非常有吸引力的。

以上是关于GraphQL有啥用?的主要内容,如果未能解决你的问题,请参考以下文章

GraphQL 和猫鼬有啥区别?

使用 GraphQL,声明一个与 GraphQL“类型”没有任何明显差异的支持模型“类”有啥好处或必要性?

操作参数和 GraphQL 变量有啥区别?

400 对 GraphQL 端点的错误请求(我的测试查询有啥问题?)

我有啥理由在 GraphQL 结果中取回查询名称?

GraphQL 和 SPARQL 有啥区别?