Anúncios incomodam? Ir Sem anúncios Hoje

Gerador de Definições de Tipos GraphQL a partir de JSON

DadosDesenvolvedorTexto
ANUNCIADO Remover?
ANUNCIADO Remover?

Guia

Gerador de Definições de Tipo GraphQL a partir de JSON

Gerador de Definições de Tipos GraphQL a partir de JSON

Cole qualquer objeto ou array JSON e receba instantaneamente um documento de linguagem de definição de esquema do GraphQL (SDL) que descreve sua estrutura. O gerador percorre a árvore JSON, infere tipos escalares, nomeia objetos aninhados, une variantes de array de objetos e emite um tipo raiz opcional Query para que a saída esteja pronta para ser inserida em um servidor como Apollo, Yoga, Mercurius ou graphql-go.

Por que um conversor determinístico de JSON para SDL do GraphQL é importante

Escrever manualmente tipos do GraphQL a partir de um payload de exemplo é mecânico, mas propenso a erros. Uma ausência de nulidade, uma inconsistência Int vs Floatou a esquecimento de um marcador de não nulo em um elemento de lista pode quebrar a geração de código para todos os clientes downstream. Um gerador baseado em regras trata o mesmo exemplo JSON de forma idêntica sempre que é executado, o que torna seguro regenerar a cada alteração na API.

Como usar

  1. Cole um objeto ou array JSON no campo de entrada ou clique Tente um exemplo para carregar um payload representativo.
  2. Defina o Nome do Tipo Raiz se você quiser algo diferente do Root.
  3. Escolha um Nulidade do Campo estratégia – estrita (!) para campos obrigatórios ou todos nulos para prototipagem.
  4. Alternar Detecção de ID para promover automaticamente id e *Id chaves para o escalar do GraphQL ID .
  5. Opcionalmente inclua um tipo raiz com campos de entidade única e de lista de entidades. Query Copie o SDL ou baixe-o como
  6. Infereção de Escalares schema.graphql.

Características

  • – distingue de forma determinística. String, Int, Float, Booleane, e ID Tipos de Objetos Aninhados
  • – gera um tipo nomeado separado para cada objeto aninhado usando PascalCase a partir da chave do campo. Unificação de Arrays de Objetos
  • – une todas as propriedades entre os itens do array para que campos opcionais sejam corretamente marcados. Alternância entre Nulo e Não Nulo
  • – emite marcadores estritos ou relaxa tudo para nulo para protótipos iniciais. ! Detecção Automática de ID
  • – promove chaves no estilo para o id, userId, orderId esqueleto de consulta raiz ID .
  • – opcional com assinaturas de resolvers para entidades únicas e listas. – seu JSON nunca sai do navegador, então a ferramenta é segura para payloads sensíveis. type Query { ... } Regras de Infereção de Tipos
  • Exclusivamente do lado do cliente Números inteiros mapeiam para

; números com parte fracionária mapeiam para

  • . Um campo visto como ambos promove para IntStrings mapeiam para Float. Com detecção de ID ativada, chaves nomeadas Float.
  • ou terminando em Stringtornam-se id Valores booleanos mapeiam para Id os campos que têm valores nulos indicam que o campo é nulo, para que o SDL gerado pule a parte final ID.
  • Arrays vazios default para Boolean.
  • null porque não é possível inferir um tipo de elemento de forma segura. !.
  • Arrays de objetos se unem em um tipo nomeado; campos ausentes em qualquer elemento tornam-se automaticamente nulos. [String] Quem o utiliza
  • Engenheiros de backend que envolvem um endpoint REST ou um arquivo JSON em uma gateway do GraphQL.

Desenvolvedores de frontend que prototipam um esquema contra um payload de exemplo antes que a API esteja pronta.

  • Designers de API que documentam as formas de resposta de terceiros como um contrato tipado.
  • Pipeline de geração de código que precisa de um artefato reprodutível de SDL a partir de um exemplo JSON estável.
  • O que é o SDL do GraphQL?
  • A Linguagem de Definição de Esquema é a sintaxe baseada em texto do GraphQL para descrever tipos, campos, consultas e mutações expostas por uma API. Usa palavras-chave como type, scalar, enum e input para declarar a estrutura dos dados que um servidor pode retornar e as operações que um cliente pode chamar.

ANUNCIADO Remover?

Perguntas frequentes

  1. Por que o GraphQL usa o marcador ! (não nulo)?

    Um ponto de exclamação após um tipo declara que o campo nunca pode resolver em nulo. Isso permite que os clientes pulem o código de verificação de nulo e permite que o servidor falhe rapidamente se um valor obrigatório estiver ausente. Sem isso, o GraphQL trata todos os campos como nulos por padrão.

  2. Quando um campo deve usar o escalar ID em vez de String?

    O escalar ID é reservado para identificadores opacos usados para refazer ou armazenar um objeto – chaves primárias, UUIDs, slugs, chaves estrangeiras. Ele é serializado como uma string, mas indica identidade em vez de conteúdo exibido, o que ajuda ferramentas como Apollo e Relay a construírem caches normalizados corretamente.

  3. Como o GraphQL trata listas de objetos no SDL?

    Listas são escritas com colchetes, como [Order!]!. O ! interno significa que cada elemento da lista é não nulo, e o ! externo significa que a lista em si é não nula. Inferir o tipo correto do elemento a partir de um exemplo JSON exige unir as formas dos campos em todos os itens do array.

  4. Gerador de Definições de Tipos do GraphQL a partir de JSON

    Texto (158 itens)

Quer eliminar anúncios? Fique sem anúncios hoje mesmo

Instale nossas extensões

Adicione ferramentas de IO ao seu navegador favorito para acesso instantâneo e pesquisa mais rápida

Ao Extensão do Chrome Ao Extensão de Borda Ao Extensão Firefox Ao Extensão Opera

O placar chegou!

Placar é uma forma divertida de acompanhar seus jogos, todos os dados são armazenados em seu navegador. Mais recursos serão lançados em breve!

ANUNCIADO Remover?
ANUNCIADO Remover?
ANUNCIADO Remover?

Notícias com destaques técnicos

Envolver-se

Ajude-nos a continuar fornecendo ferramentas gratuitas valiosas

Compre-me um café
ANUNCIADO Remover?