Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Devo lidar com um ID do GraphQL como uma string no cliente?


ID é um tipo escalar descrito na especificação do GraphQL (rascunho de trabalho de outubro de 2016):

Sua observação

está alinhado com a especificação sobre coerção de resultados :

e coerção de entrada :

Como devo lidar com esse valor no cliente?
  • Ao trabalhar com ID resultados , trate-os como strings.
  • Ao usar ID entradas (em variáveis ​​do GraphQL ou parâmetros de entrada para mutações ou consultas), você pode usar inteiros ou strings.

Devo sempre convertê-lo em um número inteiro assim que o obtiver do GraphQL?

Isso depende muito da sua aplicação. Não existe uma regra geral que dite um claro "sim" ou "não" aqui.

Devo modificar meu código de sequência para armazenar o valor de ID como uma string?

Não, isso não é necessário.

A especificação do GraphQL sobre o ID tipo não cobre como você armazena os ids, apenas como um servidor GraphQL deve tratar ID entrada e saída. Cabe à camada GraphQL garantir esse comportamento. Como os ids são tratados no armazenamento real depende da camada de armazenamento.

Existe uma maneira correta de proceder ao usar IDs do GraphQL como este?

Espero que as respostas acima também respondam a essa pergunta :)