Esquema JSON para Protobuf
Converta um exemplo JSON numa definição de mensagem Protocol Buffers .proto.
Esquema JSON para Protobuf
Cole um exemplo JSON e esta ferramenta deduz a forma dos seus dados e escreve-os como uma definição de mensagem Protocol Buffers, pronta a colar num ficheiro .proto. É construída para o caso comum de converter uma resposta de API, um objeto de configuração ou um registo de log numa schema inicial, em vez de digitar números de campo e tipos manualmente.
Escolha a sintaxe proto3 ou proto2, nomeie a mensagem raiz e adicione uma declaração de pacote se o seu projeto usar uma. Os números de campo começam em 1 por padrão e aumentam em 1 por campo, ambos configuráveis para um esquema de numeração reservado antecipadamente. Arrays tornam-se campos repeated, e um objeto cujos valores são todos do mesmo tipo — uma busca indexada por ID ou código de idioma — torna-se um map<string, T> em vez de uma mensagem fixa, para que um campo de dicionário não se transforme em dezenas de campos nomeados. Ative a palavra-chave optional para marcar campos ausentes ou nulos em parte da sua amostra, e alterne mensagens aninhadas para manter tipos filhos dentro do seu pai em vez de como irmãos de nível superior plano. Strings de data com aspeto ISO 8601 mapeiam para google.protobuf.Timestamp, e cada campo pode incluir um comentário com sua chave JSON original.
Objetos profundamente aninhados, arrays de objetos, arrays de arrays e campos de tipo misto são todos tratados: um valor genuinamente de tipo misto recua para google.protobuf.Value com a importação correspondente adicionada automaticamente. JSON malformado é relatado com a linha e coluna onde a análise falhou em vez de um erro genérico.
Tudo é executado localmente no seu navegador — seu JSON nunca é enviado para lado nenhum. Copie o esquema gerado, baixe-o como ficheiro .txt para renomear para .proto, ou envie o resultado para outra ferramenta para continuar a trabalhar.