Leitores como você ajudam a apoiar o MUO. Quando você faz uma compra usando links em nosso site, podemos ganhar uma comissão de afiliado. Consulte Mais informação.

GraphQL é uma linguagem de consulta poderosa que permite aos clientes solicitar apenas os dados de que precisam de um servidor. Isso ajuda a aumentar a velocidade das solicitações, pois você pode personalizar as consultas para buscar apenas dados específicos.

O GraphQL possui dois tipos de operação: consultas e mutações. Apesar de suas semelhanças, eles servem a propósitos bastante diferentes.

Diferenças entre consultas e mutações do GraphQL

Consultas e mutações são semelhantes no sentido de que você as usa para fazer solicitações a APIs GraphQL. No entanto, eles diferem em sintaxe, modo de execução e uso.

A sintaxe de consultas e mutações

A sintaxe básica de uma consulta GraphQL é a seguinte:

query getProduct($id: ID!) {
produto (id: $id) {
nome
preço
}
}

Aqui está o que este código significa:

  • query é a palavra-chave que identifica a solicitação como uma consulta.
  • instagram viewer
  • getProduct é o nome da operação
  • $id é a variável
  • EU IA! é o tipo de variável.

Se você não precisar das variáveis, omita-as e defina a consulta assim:

query getProducts {
produtos {
nome
preço
}
}

Em algumas situações, você pode omitir a palavra-chave e o nome da consulta, escrevendo uma consulta GraphQL como esta:

produtos {
nome
preço
}

Embora esse formato funcione, usar a palavra-chave de consulta é melhor para facilitar a leitura.

A sintaxe das mutações é semelhante às consultas, exceto pelo uso da palavra-chave mutação.

mutação AddNewProduct ($name: String!, $price: Number!) { 
addProduct (nome: $nome, preço: $preço) {
nome
preço
}
}

Diferentes modos de execução

Outra diferença entre uma consulta e uma mutação é que as consultas são executadas em paralelo, enquanto as mutações são executadas de forma síncrona. Quando você executa duas mutações, elas serão executadas uma após a outra, em ordem

Usos contrastantes para consultas e mutações

Você deve usar consultas apenas para operações READ. Por exemplo, use uma consulta ao buscar produtos de um terminal de API.

Use mutações para operações CREATE, UPDATE e DELETE. São essencialmente operações que alteram os dados armazenados no banco de dados.

Por exemplo, use uma mutação ao atualizar um nome de cliente por meio de um terminal de pedidos.

Adquira o hábito de usar consultas e mutações apropriadamente

GraphQL é uma linguagem de consulta poderosa que permite solicitar apenas os dados de que você precisa. Existem duas operações que você pode realizar no GraphQL: consultas e mutações.

Essas operações diferem em sintaxe, execução e seus usos pretendidos. Você deve usar consultas para operações READ e mutações para operações CREATE, UPDATE e DELETE.