Heim > Backend-Entwicklung > Golang > Wie dekodiere ich JSON mit Wertfeldern in Protobuf-Strukturen?

Wie dekodiere ich JSON mit Wertfeldern in Protobuf-Strukturen?

Susan Sarandon
Freigeben: 2024-10-30 01:35:28
Original
665 Leute haben es durchsucht

How to Decode JSON with Value Fields into Protobuf Structs?

JSON mit Wertfeld in Protobuf dekodieren

Das angegebene Problem tritt auf, wenn versucht wird, JSON in ein Protobuf-Strukturfeld zu entmarshalieren, das als google.protobuf definiert ist .Wert. Das zugrunde liegende Problem ist die Inkompatibilität zwischen der Encoding/JSON-Bibliothek und der Protobuf-Bibliothek bei der Verarbeitung solcher Felder.

Um dieses Problem zu lösen, wird empfohlen, die speziell entwickelte Protojson-Bibliothek zu nutzen, die vom Protobuf-Projekt bereitgestellt wird. Durch den Einsatz der Funktion protojson.Unmarshal wird es möglich, JSON-Daten, die Wertfelder enthalten, korrekt in die entsprechenden Protobuf-Strukturen zu dekodieren.

Hier ist ein aktualisierter Codeausschnitt, der die Verwendung der Funktion protojson.Unmarshal demonstriert:

<code class="go">req := &proto.JobCreateRequest{}
err := protojson.Unmarshal(bytes, req)</code>
Nach dem Login kopieren

Diese Änderung sollte das Problem beheben und es Ihnen ermöglichen, das Datenfeld der JobCreateRequest-Struktur erfolgreich mit den bereitgestellten JSON-Daten zu füllen.

Das obige ist der detaillierte Inhalt vonWie dekodiere ich JSON mit Wertfeldern in Protobuf-Strukturen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage