Ir al contenido
Menú principal
Menú principal
mover a la barra lateral
ocultar
Navegación
Página principal
Cambios recientes
Página aleatoria
Ayuda sobre MediaWiki
Buscar
Buscar
español
Apariencia
Crear una cuenta
Acceder
Herramientas personales
No has accedido
Discusión
Contribuciones
Crear una cuenta
Acceder
Edición de «
GraphQL
»
Página
Discusión
español
Leer
Editar
Editar código
Ver historial
Herramientas
Herramientas
mover a la barra lateral
ocultar
Acciones
Leer
Editar
Editar código
Ver historial
General
Lo que enlaza aquí
Cambios relacionados
Información de la página
Apariencia
mover a la barra lateral
ocultar
Advertencia:
no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si
inicias sesión
o
creas una cuenta
, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.
Comprobación antispam. ¡
No
rellenes esto!
{{Mal traducido}} {{Infobox software|nombre=GraphQL|logo=[[File:GraphQL Logo.svg|225px]]|captura=|autor=Facebook|desarrollador=[[Facebook]], and community|modelo_desarrollo=|licencia=|lanzamiento=2015|sitio_web=graphql.org|sistema operativo=|idiomas=|español=|name=GraphQL|operating system=[[Cross-platform]]|programming language=Implementations in [[Java (programming language)|Java]], [[JavaScript]], [[Ruby (programming language)|Ruby]], [[Scala (programming language)|Scala]], others.|repo={{URL|https://github.com/graphql/graphql-spec}}|latest release version=June 2018<ref name="graphql_release">{{cite web | url=https://github.com/graphql/graphql-spec/releases/tag/June2018 | title=GraphQL June 2018 Release Notes | accessdate=26 de marzo de 2019}}</ref>|released={{Start date|2015}}|developer=|author=Facebook|caption=|screenshot=|website={{URL|https://graphql.org}}}} '''GraphQL''' es un lenguaje de consulta y manipulación de datos para APIs, y un [[Tiempo de ejecución|entorno de ejecución]] para realizar [[Lenguaje de consulta|consultas]] con datos existentes.<ref name="graphql-website">{{Cita web|url=http://graphql.org/|título=GraphQL: A query language for APIs.|editorial=}}</ref> GraphQL fue desarrollado internamente por [[Facebook]] en 2012 antes de ser liberado públicamente en 2015.<ref>{{Cita web|url=https://code.fb.com/core-data/graphql-a-data-query-language/|título=GraphQL: A data query language|editorial=}}</ref> El 7 de noviembre de 2018, el proyecto GraphQL fue transferido de Facebook a la recien establecida [https://graphql.org Fundación GraphQL], alojada por la [[Fundación Linux]].<ref>{{Cita noticia|url=https://techcrunch.com/2018/11/06/facebooks-graphql-gets-its-own-open-source-foundation/|título=Facebook's GraphQL gets its own open-source foundation|fechaacceso=7 de noviembre de 2018|idioma=en-US}}</ref><ref>{{Cita noticia|url=https://www.linuxfoundation.org/press-release/2018/11/intent_to_form_graphql/|título=The Linux Foundation Announces Intent to Form New Foundation to Support GraphQL - The Linux Foundation|fecha=6 de noviembre de 2018|fechaacceso=7 de noviembre de 2018|idioma=en-US|fechaarchivo=28 de enero de 2019|urlarchivo=https://web.archive.org/web/20190128030155/https://www.linuxfoundation.org/press-release/2018/11/intent_to_form_graphql/|deadurl=yes}}</ref> Desde 2012, el crecimiento de GraphQL ha seguido la linea de tiempo de adopción tal como fue propuesta por Lee Byron, creador de GraphQL, con exactitud.<ref>{{Cita web|url=https://nordicapis.com/is-graphql-moving-toward-ubiquity/|título=Is GraphQL Moving Toward Ubiquity?|autor=Anthony|nombre=Art|sitioweb=NordicAPIs}}</ref> El objetivo de Byron es hacer GraphQL este presente en todas las plataformas web. Proporciona una aproximación para desarrollo APIs web y ha sido comparado y contrastado con [[Transferencia de Estado Representacional|REST]] y otras arquitecturas de [[servicio web]]. Permite a los clientes definir la estructura de datos requerida, y la misma estructura de datos será regresada por el servidor, impidiendo así que excesivas cantidades de datos sean regresadas, aunque esto tiene implicaciones en cómo de efectivo puede ser el [[caché web]] de los resultados de estas consultas. La flexibilidad y riqueza del lenguaje de consulta también añade complejidad que puede no valer la pena para APIs mas sencillas.<ref>{{Cita noticia|url=https://phil.tech/api/2017/01/24/graphql-vs-rest-overview/|título=GraphQL vs REST: Overview|fechaacceso=25 de noviembre de 2018|idioma=en-GB}}</ref><ref>{{Cita noticia|url=https://honest.engineering/posts/why-use-graphql-good-and-bad-reasons|título=Why use GraphQL, good and bad reasons|fecha=4 de agosto de 2018|fechaacceso=26 de noviembre de 2018|idioma=en-US|fechaarchivo=26 de noviembre de 2018|urlarchivo=https://web.archive.org/web/20181126051100/https://honest.engineering/posts/why-use-graphql-good-and-bad-reasons|deadurl=yes}}</ref><ref>{{Cita web|url=https://www.howtographql.com/basics/0-introduction/|título=GraphQL Fundamentals|fechaacceso=4 de julio de 2018|sitioweb=Howto GraphQL}}</ref> Consta de un sistema de tipos, [[lenguaje de consulta]] y semantica de ejecución, validación estática, e [[introspección de tipos]]. GraphQL soporta lectura, escritura, y subscripción a cambios de información (actualizaciónes en tiempo real – mas comunmente implementada en uso de [[Webhook|WebHooks]]).<ref>{{Cita web|url=https://facebook.github.io/graphql/June2018/#sec-Language.Operations|título=GraphQL|fechaacceso=4 de julio de 2018|sitioweb=facebook.github.io|editorial=[[Facebook]]|urlarchivo=https://web.archive.org/web/20180718051011/http://facebook.github.io/graphql/June2018/#sec-Language.Operations|fechaarchivo=18 de julio de 2018}}</ref> Los servidores de GraphQL están disponibles para múltiples lenguajes, incluyendo [[Haskell]], [[JavaScript|Javascript]], [[Perl]], [[Python]], [[Ruby]], [[Java (lenguaje de programación)|Java]], [[C++]],<ref>{{Obra citada|título=graphql/libgraphqlparser|url=https://github.com/graphql/libgraphqlparser|fechaacceso=30 de mayo de 2020|fecha=27 de mayo de 2020|editorial=GraphQL}}</ref> [[C Sharp|C#]], [[Scala (lenguaje de programación)|Scala]], [[Go (lenguaje de programación)|Go]], [[Rust (lenguaje de programación)|Rust]], [[Elixir (lenguaje de programación)|Elixir]], [[Erlang]], [[PHP]], [[R (lenguaje de programación)|R]], y [[Clojure]].<ref>{{Cita web|url=https://hasura.io/|título=Hasura – Instant Realtime GraphQL on Postgres|fechaacceso=24 de octubre de 2019|sitioweb=Hasura}}</ref><ref>{{Cita web|url=https://github.com/graphql/graphql-js|título=GraphQL js}}</ref><ref>{{Cita web|url=https://metacpan.org/pod/GraphQL|título=GraphQL - Perl implementation of GraphQL}}</ref><ref>{{Cita web|url=http://graphene-python.org|título=Graphene|fechaacceso=18 de junio de 2017|sitioweb=graphene-python.org}}</ref><ref>{{Cita web|url=http://absinthe-graphql.org/|título=Absinthe: The GraphQL toolkit for Elixir|fechaacceso=19 de julio de 2018}}</ref> El 9 de febrero de 2018, el Lenguaje de Definición de Esquema GraphQL Schema Definition Language (SDL) comenzó a formar parte de la especificación.<ref>{{Cita web|url=https://github.com/facebook/graphql/pull/90/|título=GraphQL SDL included in Github repository|editorial=}}</ref> == Ejemplo == POST request:<syntaxhighlight lang="yaml"> { orders { id productsList { product { name price } quantity } totalAmount } } </syntaxhighlight>Respuesta:<syntaxhighlight lang="json"> { "data": { "orders": [ { "id": 1, "productsList": [ { "product": { "name": "orange", "price": 1.5 }, "quantity": 100 } ], "totalAmount": 150 } ] } } </syntaxhighlight> == Véase también == * [[Búsqueda mediante ejemplo|Consulta por Ejemplo]] * [[Especificación OpenAPI]] == Referencias == {{Listaref|2}} == Enlaces externos == {{Official website|https://graphql.org}} {{Control de autoridades}} [[Categoría:Lenguajes de consulta]]
Resumen:
Al guardar los cambios aceptas los
términos de uso
y liberas de forma irrevocable tu contribución conforme a los términos de las licencias
licencia CC BY-SA 4.0
y
GFDL
. Aceptas igualmente que un hipervínculo o URL es atribución suficiente conforme a la licencia Creative Commons.
Cancelar
Ayuda de edición
(se abre en una ventana nueva)
Buscar
Buscar
Edición de «
GraphQL
»
Añadir idiomas
Añadir tema