構造体の型がJSON文字列で指定されている場合、JSON文字列を構造体に非整列化するにはどうすればよいですか。これは私のコードです:構造体への非JSONの呼び出し
package main
import (
"fmt"
"encoding/json"
)
type ServiceResult struct {
Type string `json:"type"`
Content interface{} `json:"content"`
}
type Person struct {
Name string `json:"name"`
}
func main() {
nikola := ServiceResult{}
nikola.Type = "Person"
nikola.Content = Person{"Nikola"}
js, _ := json.Marshal(nikola)
fmt.Println("Marshalled object: " + string(js))
}
そして今、私は、このJSON文字列から新しい人を作成したいが、 タイプは、JSON文字列から読み出す必要があります。
{"type":"Person","content":{"name":"Nikola"}}
質問によれば、アンマーシャリングの後、またはアンマーシャリング中までContentにどのタイプを使用するかはわかりません。 – Adrian
質問では、この2つの構造体でこの型を非整列化する方法を尋ねるだけではなく、多くのパラメータのデータパスまたはクエリのparamまたは複雑なことを考えるいくつかの点からチェックすることもできます。 – Jeyem
質問は非常に最初の文 "構造体の型はJSON文字列で与えられます"。 – Adrian