この質問では、結果のマップで JSON タグをキーとして維持しながら、Golang 構造体をマップに変換する方法を求めます。 。最初は、reflect パッケージを使用して応答を調査しました。
代替ソリューションは、構造体を操作するための包括的な機能を提供する structs パッケージ (https://github.com/fatih/structs) によって提供されます。
構造体パッケージは匿名フィールドとネストされた構造体をサポートします。フィールドタグを使用して特定のフィールドをフィルタリングできます。例:
type Server struct { Name string `json:"server_name"` ID int32 `json:"server_id"` Enabled bool `json:"is_enabled"` } s := &Server{ Name: "gopher", ID: 123456, Enabled: true, } // {"server_name": "gopher", "server_id": 123456, "is_enabled": true} m := structs.Map(s)
この例では、json タグがマップ キーとして使用され、構造体の JSON 準拠のマップ表現が生成されます。 structs パッケージは、構造体を管理してマップに変換し、元のリクエストに効果的に対処するための多用途ツールを提供します。
以上がJSON タグをキーとして使用して Go 構造体をマップに変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。