JSON zu Protobuf Schema
Konvertieren Sie ein JSON-Beispiel in eine Protocol Buffers .proto Nachrichtendefinition.
JSON zu Protobuf Schema
Fügen Sie ein JSON-Beispiel ein und dieses Tool leitet die Form Ihrer Daten ab und schreibt sie als Protocol Buffers Nachrichtendefinition, bereit zum Einfügen in eine .proto Datei. Es ist für den alltäglichen Fall konzipiert, eine API-Antwort, ein Konfigurationsobjekt oder einen Log-Datensatz in ein Ausgangsschema umzuwandeln, statt Feldnummern und Typen von Hand einzugeben.
Wählen Sie proto3 oder proto2 Syntax, benennen Sie die Wurzelnachricht und fügen Sie eine Paketdeklaration hinzu, wenn Ihr Projekt eine verwendet. Feldnummern beginnen standardmäßig bei 1 und erhöhen sich um 1 pro Feld, beide konfigurierbar für ein im Voraus reserviertes Nummerierungsschema. Arrays werden zu repeated Feldern, und ein Objekt, dessen Werte alle ein und denselben Typ haben — eine nach ID oder Sprachcode indizierte Suche — wird zu map<string, T> statt zu einer festen Nachricht, sodass ein Wörterbuchfeld nicht in Dutzende benannte Felder zerlegt wird. Aktivieren Sie das optional Schlüsselwort, um Felder zu markieren, die in einem Teil Ihres Beispiels fehlen oder null sind, und schalten Sie verschachtelte Nachrichten um, um untergeordnete Typen in ihrem übergeordneten Element zu behalten, statt als flache Geschwister auf oberster Ebene. ISO 8601-ähnliche Datumstrings werden auf google.protobuf.Timestamp abgebildet, und jedes Feld kann einen Kommentar mit seinem ursprünglichen JSON-Schlüssel tragen.
Tiefe verschachtelte Objekte, Arrays von Objekten, Arrays von Arrays und Felder mit gemischten Typen werden alle verarbeitet: Ein echtes Feld mit gemischtem Typ greift auf google.protobuf.Value zurück, wobei der entsprechende Import automatisch hinzugefügt wird. Fehlerhaftes JSON wird mit der Zeile und Spalte gemeldet, wo das Parsing fehlgeschlagen ist, statt einer allgemeinen Fehlermeldung.
Alles läuft lokal in Ihrem Browser — Ihr JSON wird nicht hochgeladen. Kopieren Sie das generierte Schema, laden Sie es als .txt Datei herunter, um es in eine .proto umzubenennen, oder senden Sie die Ausgabe an ein anderes Tool, um weiter zu arbeiten.