Qué es GraphQL y por qué deberías dejar de utilizar REST

Author
Por Darío Rivera
Publicado el en Laravel

GraphQL es un lenguaje open source de consulta y manipulación de datos en APIs. Este lenguaje no es simplemente una alternativa al estilo de arquitectura REST, sino que fue creado en base a las debilidades que tenía REST con respecto a la transferencia de datos entre sistemas de computadoras.

GraphQL fue creado por Facebook en 2012 y su release público no fue sino hasta 2015. Después de esto se transfirió a una organización recién creada denominada GraphQL Foundation. Vamos a ver entoneces las ventajas y desventajas de este nuevo lenguaje de consulta y manipulación de datos sobre REST.

Recursos parciales

Una de las formas de mejorar el performance sobre una API es enviar y recibir solamente aquella porción de información sobre la que estamos interesados (Google Tasks API - Working with partial resources). Y es aquí en donde GraphQL tiene una gran ventaja sobre REST. Con GraphQL puedes inciar que campos necesitas en tu respuesta y obtener extactamente aquello que solicitas.

Como sabes, un gran número de APIs construídas en REST envían todas la información sobre una entidad aún cuando el cliente solo necesite unos pocos campos. Esto no significa que en REST sea imposible realizar este tipo de optimizaciones, pero por lo general, tomará más tiempo desarrollar dicha funcionalidad cuando GraphQL ya lo hace de manera nativa.

GET /api/powerstats HTTP/1.1

{
    [
      "name": "Batman",
      "intelligence": "100",
      "strength": "26",
      "speed": "27",
      "durability": "50",
      "power": "47",
      "combat": "100"
    ]
}
{
  hero {
    name
    intelligence
  }
}
{
  "data": {
    "hero": {
      "name": "Batman",
      "intelligence": "100"
    }
  }
}

Acerca de Darío Rivera

Author

Application Architect at Elentra Corp . Quality developer and passionate learner with 10+ years of experience in web technologies. Creator of EasyHttp , an standard way to consume HTTP Clients.

LinkedIn Twitter Instagram

Sólo aquellos que han alcanzado el éxito saben que siempre estuvo a un paso del momento en que pensaron renunciar.