MarshalJSON() を使用して Go の JSON エンコーディングに任意のフィールドを追加する方法
問題:
json.Marshal() を使用して構造体をエンコードすると、次のような問題が発生する可能性があります。構造体の定義の一部ではない追加フィールドを JSON 出力に含める必要があります。これは、JSON ペイロードにメタデータまたはコンテキスト情報を追加する必要があるシナリオに役立ちます。
質問:
MarshalJSON() メソッドを利用することは可能ですか?任意のフィールドを JSON 表現に組み込むstruct?
答え:
はい、MarshalJSON() を使用して、Go の JSON エンコーディングに任意のフィールドを追加できます。このメソッドを使用すると、構造体の JSON 表現をカスタマイズして、出力をより詳細に制御できます。
実装:
カスタム MarshalJSON() メソッドを作成できます。追加フィールドを使用して新しい構造体を構築し、それを JSON にマーシャリングする構造体:
type Book struct {
以上がMarshalJSON() を使用して Go の JSON エンコーディングに任意のフィールドを追加できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。