Command Palette

Search for a command to run...

JS

JSON para ir estruturar

Converta JSON em definições de estrutura Go com tags json Objetos aninhados tornam-se estruturas inline, matrizes de objetos são mescladas e nomes de campos seguem as convenções Go. Executa lado do cliente.

O que é um conversor de estrutura JSON para Go?

Um conversor de estrutura JSON para Go transforma um documento JSON nas declarações de tipo Go que o descrevem, para que você possa desmarcar os mesmos dados com codificação/json em vez de digitar a estrutura manualmente. Cada objeto JSON se torna uma estrutura Go, cada campo carrega uma tag json: "key" que o mapeia de volta ao nome original, e os tipos escalares são inferidos a partir dos valores: uma string JSON se torna string, um número inteiro se torna int, um decimal se torna float64, true e false se torna bool e null se torna interface {}. Cole uma carga útil e você obtém um bloco de tipo pronto para compilar de volta.

Ele existe porque escrever Go structs a partir de uma resposta API real é tedioso e fácil de obter sutilmente errado Nomes de campo têm que ser exportados e seguir convenções Go, então id torna-se ID e user_url torna-se UserURL, enquanto a tag json tem que preservar a chave original exata ou json.Unmarshal silenciosamente pula o campo Objetos aninhados precisam de sua própria estrutura, e uma matriz de objetos precisa de uma única estrutura que cubra cada chave que qualquer elemento tem Fazendo que através de uma resposta profundamente aninhada é onde os erros se infiltram O conversor aplica essas regras de forma consistente: objetos aninhados tornam-se estruturas inline, e matrizes de objetos são mescladas de modo que uma chave que aparece em apenas alguns elementos ainda está presente no tipo gerado.

Tudo é executado no seu navegador O JSON que você cola é analisado e analisado em JavaScript no seu próprio dispositivo, então nada é carregado, registrado ou armazenado, e a ferramenta continua trabalhando com a rede desconectada assim que a página for carregada Isso importa quando a carga útil é uma resposta API privada ou contém chaves e valores que você prefere não enviar para qualquer lugar Você pode renomear o tipo raiz, alternar inteiros para int64 quando precisar do tipo mais amplo e adicionar omitempty a cada tag quando quiser zero valores omitidos da saída codificada.

Um pequeno exemplo mostra o mapeamento go JSON to struct Colar {"order_id": 1042, "total": 19.5, "itens": [{"sku": "A1", "qty": 2}, {"sku": "B2", "qty": 1, "gift_note": "Happy birthday"}]}, digite order as the Root type e clique em Convert. Você obtém type Order struct com OrderID int, Total float64 e Items [] struct holding Sku, Qty int e GiftNote string GiftNote está lá mesmo que apenas o segundo item tenha, porque o conversor JSON to Go struct mescla cada elemento da matriz em um tipo.

Como usar o conversor JSON to Go struct?

  1. Cole seu JSON

    Cole um objeto ou matriz JSON na caixa de entrada Carregue a amostra primeiro se quiser ver a forma da estrutura gerada antes de usar seus próprios dados.

  2. Nomeie o tipo de raiz

    Insira um nome para a estrutura de nível superior, como Usuário ou ApiResponse Ele é limpo em um identificador Go exportado válido para que ele compile como escrito.

  3. Defina opções de número inteiro e tag

    Escolha int ou int64 para números inteiros e ative omitempty se desejar que os campos vazios sejam deixados de fora quando a estrutura for codificada de volta para JSON.

  4. Converter e copiar

    Clique em Converter para construir as definições de estrutura, depois copie-as para o seu arquivo Go JSON inválido é relatado com a mensagem exata do analisador para que você possa corrigi-lo.

Principais características

  • Corrigir tags json

    Cada campo mantém uma tag json: "original_key" para que json.Unmarshal mapeie os dados de volta para o nome JSON exato, mesmo quando o campo Go é renomeado para seguir convenções.

  • Nomes de campos Go-Convention

    As chaves são exportadas e os inicialismos comuns são maiúsculos, então id se torna ID, user_url se torna UserURL e html_body se torna HTMLBody, correspondendo às expectativas do golint.

  • Estruturas aninhadas embutidas

    Objetos JSON aninhados tornam-se literais de estrutura em linha para qualquer profundidade, de modo que toda a forma vive em uma declaração que você pode colar como um único bloco.

  • Matrizes mescladas de objetos

    Uma matriz de objetos produz uma estrutura cobrindo cada chave que qualquer elemento possui, e tipos de valores conflitantes para uma chave voltam à interface {} em vez de falhar.

Frequently Asked Questions

Um conversor de estrutura JSON para Go transforma um documento JSON nas declarações de tipo Go que o descrevem Cada objeto se torna uma estrutura, cada campo recebe uma tag json: "key" e os tipos de valor são inferidos, para que você possa desmarcar os mesmos dados com codificação/json sem escrever a estrutura manualmente.

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!

json to gojson to go structgo json to structjson to golang structgo struct generatorjson to structconvert json to gogolang struct from jsonfree json to gono signup json to go