JSON マーシャリングとアンマーシャリングは、インターフェイス タイプを操作するときに課題を引き起こす可能性があります。この記事では、この問題を詳しく掘り下げ、解決策を提供します。
基になる型がローカルで認識されており、リフレクターがそれを識別できるため、インターフェイス型からのマーシャリングは簡単です。
インターフェイス タイプへのアンマーシャリングには問題があります。具体的な型がわからないと、リフレクターはマーシャリングされたデータを受け取る新しいインスタンスをインスタンス化できません。
この制限に対処する 1 つのアプローチは、カスタム型の Unmarshaler インターフェイスを実装することです。 。以下の例を参照してください:
この例では、RawString はマーシャラーとアンマーシャラーの両方を実装し、カスタム マーシャリングとアンマーシャリングを可能にします。次に、main 関数は json.Unmarshal を使用して JSON データを A のインスタンスにデコードします。
以上がGo のインターフェイス タイプを使用して JSON のマーシャリングとアンマーシャリングを効果的に処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。