GraphQL

GraphQL é unha linguaxe de consulta de APIs creada por Facebook en 2012 e liberado en 2015.

Características
É unha alternativa a REST que usa un sistema forte de tipos para describir as funcionalidades dunha API. GraphQL describe os recursos mediante un esquema (escrito nunha linguaxe propia chamada SDL) que define:
 Tipos de datos e as relacións entre eles.
 Unha serie de operacións, entre as que destacan as Consultas (Queries) para a lectura de datos, e os Modificadores (Mutations) para crear, modificar e borrar datos, os solucionadores (Resolvers) e os manexadores de erros.

 Tipos 
Definen as entidades a consultar ou modificar, os seus atributos e as relacións con outros tipos. En SDL identifícanse pola palabra type:type Query {
  hero: Character
}

type Character {
  name: String
  friends: [Character]
  homeWorld: Planet
  species: Species
}

type Planet {
  name: String
  climate: String
}

type Species {
  name: String
  lifespan: Int
  origin: Planet
}

 Operacións 
As operacións (consultas e modificadores) tamén son tipos, e os seus atributos declaran as operacións dispoñibles. Así que ó realizar unha consulta débese especificar os atributos de retorno. A vantaxe de GraphQL é que se pode navegar pola información asociada á consulta, o que proporciona maior flexibilidade á hora de definir APIs.

Notas

Véxase tamén
Ligazóns externas
https://graphql.org/ 

Categoría:Linguaxes de consulta
Categoría:Facebook