Da JSON a schema Protobuf
Trasforma un campione JSON in una definizione di messaggio Protocol Buffers .proto.
Da JSON a schema Protobuf
Incolla un campione JSON e questo strumento deduce la struttura dei tuoi dati e li scrive come una definizione di messaggio Protocol Buffers, pronta per essere inserita in un file .proto. È progettato per il caso comune di convertire una risposta API, un oggetto di configurazione o un record di log in uno schema iniziale, senza dover digitare numeri e tipi di campo manualmente.
Scegli la sintassi proto3 o proto2, nomina il messaggio radice e aggiungi una dichiarazione di package se il tuo progetto la usa. I numeri di campo iniziano da 1 per impostazione predefinita e aumentano di 1 per campo, entrambi configurabili per uno schema di numerazione riservato. Gli array diventano campi repeated, e un oggetto i cui valori sono tutti dello stesso tipo — una ricerca indicizzata per ID o codice di lingua — diventa map<string, T> invece di un messaggio fisso, impedendo che un campo dizionario diventi dozzine di campi denominati. Attiva la parola chiave optional per contrassegnare i campi mancanti o null in parte del tuo campione, e attiva i messaggi annidati per mantenere i tipi figlio all'interno del loro genitore piuttosto che come fratelli di livello superiore. Le stringhe in formato ISO 8601 vengono mappate a google.protobuf.Timestamp, e ogni campo può portare un commento con la sua chiave JSON originale.
Gli oggetti profondamente annidati, gli array di oggetti, gli array di array e i campi di tipo misto sono tutti gestiti: un valore genuinamente misto ritorna a google.protobuf.Value con l'importazione corrispondente aggiunta automaticamente. JSON malformato viene segnalato con la riga e la colonna in cui l'analisi ha avuto esito negativo, piuttosto che un errore generico.
Tutto viene eseguito localmente nel tuo browser — il tuo JSON non viene mai caricato da nessuna parte. Copia lo schema generato, scaricalo come file .txt da rinominare in .proto, o invia l'output a un altro strumento per continuare a lavorare.