GraphQL 是一种用于 API 的查询语言和运行时(runtime),让客户端能够精确请求所需的数据字段,并由服务器根据预定义的 schema(模式)返回结果。它常用于减少“拿太多/拿太少数据”的问题,并支持在一次请求中聚合多种资源数据。
/ˈɡræfˌkjuːˌɛl/
I used GraphQL to fetch a user's name and email.
我用 GraphQL 获取了用户的姓名和邮箱。
By defining a clear GraphQL schema and resolvers, the team reduced over-fetching, improved client flexibility, and consolidated multiple REST calls into a single query.
通过定义清晰的 GraphQL schema 和 resolver,团队减少了过度获取数据,提高了客户端灵活性,并把多次 REST 调用整合为一次查询。
GraphQL 由 “Graph”(图、关系网络的概念)和 “QL”(Query Language,查询语言的缩写)组成。它最初在 Facebook 内部开发,用于更高效、可控地获取互相关联的数据。