GraphQL es un lenguaje de consultas (creado por Facebook en 2012) que permite definir de una forma sencilla e independientes de la tecnología los datos que queremos que nos devuelva el servidor:
Por ejemplo:
Que devolvería:
Podéis ver que la consulta se hace de forma diferente a cómo se consulta en las APIS REST.
Por ejemplo esta consulta GraphQL:
en un API REST tendría que haber hecho algo como GET /users/1 y GET /users/1/friends o bien GET /users/1?include=friends.name
GraphQL es una especificación y no una implementación para un lenguaje, además a nivel de transporte también es independiente pudiendo funcionar sobre HTTP, REST, MQTT,…
[…] Allá por 2015 publicábamos un primer post sobre GraphQL […]