Go での大文字と小文字を区別する JSON アンマーシャル
Go の json.Unmarshal 関数は、JSON データを構造体に逆シリアル化する方法を提供します。デフォルトでは、Unmarshal は、JSON キーと構造体のフィールド名またはタグの間で大文字と小文字を区別しない照合を実行します。ただし、大文字と小文字を区別して一致させることが望ましい場合もあります。
問題
「e」や「」などのタグが付いた JSON データを受信したとします。エ」。タグ「e」を持つオブジェクトをアンマーシャリングし、「E」を持つオブジェクトを無視したいとします。デフォルトの大文字と小文字を区別しないマッチングでは、Unmarshal は両方のタグを受け入れ、それに応じて構造体をアンマーシャルします。
解決策
残念ながら、標準の JSON ライブラリは現在大文字と小文字をサポートしていません。 Unmarshal のセンシティブなマッチング。公式ドキュメントによると:
To unmarshal JSON into a struct, Unmarshal matches incoming object keys to the keys used by Marshal (either the struct field name or its tag), preferring an exact match but also accepting a case-insensitive match.
したがって、標準の JSON ライブラリを使用して大文字と小文字を区別しないマッチングを無効にする方法はありません。
以上がGo で大文字と小文字を区別する JSON アンマーシャルを実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。