Saltar al contenido

GraphQL: consultas y las mutaciones TutorialDec, 8thIn esta guía, vamos a aprender cómo crear consultas …

marzo 13, 2020

 

En este tutorial, vamos a aprender acerca de cómo crear consultas y mutaciones en el servidor graphql.

consultas se utilizan para obtener los datos desde el punto final graphql como método get en restode API

mutaciones se utilizan para crear o actualizar o borrar los datos en graphql. de

Let aprender cómo crear una consulta en graphql si usted no sabe acerca de Graphql, por favor, echa un vistazo a myprevious tutorial GraphQL introducción.

Todo en aperturas graphql con la creación de un sistema de tipo graphql Schema.In, hay dos tipos que son especiales Tipo de consulta y el tipo de mutación.

esquema

type User{
id:ID!
name:String!
}

type Query{
user(id:ID!):User!
}

En primer lugar, hemos creado un tipo de objeto de usuario, con dos campos de identificación, nombre y tipo alsoQuery con un campo llamado usuario.

Nota: (!) Significa que el campo no se acepta valores nulos.

En graphql, tenemos que crear una función de resolución para cada campo presente en el tipo de consulta por lo thatgraphql sabe cómo responder a esas consultas.

const resolver = {

Query:{
user:function(parent,args,ctx,info){
return users.find((user)=>user.id === ctx.id)
}
}

}

Nota: La función de resolución y el campo de consulta deben tener el mismo nombre de otra forma graphql le da una error.Learn más sobre resolución de

Cómo ejecutar una consulta en graphql?

para ejecutar una consulta tenemos que escribir un nombre de campo dentro de las llaves y hay que especificar los datos que necesita para volver a partir de estos consulta como en la continuación nos preguntamos ID y el nombre del ID de usuario: 1.

{
user(id:1){
id
name
}

}

La salida desde el servidor graphql le dará JSON datos.

alias en graphql

veces tenemos que ejecutar la misma consulta dos veces en situaciones que podemos utilizar alias en graphql.

consultas {
user1: user(id: 1) {
id
name
}

user2: user(id: 2) {
id
name
}
}

anidada consultas

anidados son algo así como una consulta dentro de una consulta.

{
user1: user(id: 1) {
id
name
todos {
title
body
}
}
}

Usted puede aprender aquí cómo crear consultas anidadas en graphql

Las mutaciones en graphql

para las mutaciones, es necesario definir un tipo de mutación con los campos como la forma en que definimos los campos de consulta en el esquema.

type Mutation{

createUser(name:String!):User!
udpateUser(id:ID!,name:String):User!
deleteUser(id:ID!):User!
}

que define tres campos en el tipo de mutación que son createUser, updateUser, deleteUser que se utiliza para crear un nuevo usuario o actualizar un usuario o eliminar el usuario.

ejemplos de cómo ejecutar las mutaciones:

mutation{

createUser(name:"king"){
name
}

} mutation{

deleteUser(id:1){
id
name
}

}

que han creado una API de prueba, puede descargarlo desde github y jugar con él para que CANMORE claridad acerca de las consultas y mutaciones. repositorio

Código

feliz de codificación …

Más información sobre cómo crear api graphql