2016-06-25 15 views
1

私はちょうどGoを学び始めていますが、私は現在の仕事を分かりません。私は入れ子構造からなる構造体を直列化する必要があります。golangにjson embed構造体をシリアライズする方法

package main 

import (
    "encoding/json" 
    "fmt" 
) 

type Metadata struct { 
    model string 
} 

type Texture struct { 
    url  string 
    hash  string 
    metadata *Metadata 
} 

type Response struct { 
    SKIN *Texture 
} 

func main() { 
    response := Response{} 
    textures := &Texture{ 
     url: "http://ely.by", 
     hash: "123123123123123123", 
    } 
    metadata := &Metadata{ 
     model: "slim", 
    } 

    textures.metadata = metadata 
    response.SKIN = textures 

    result, _ := json.Marshal(response) 
    fmt.Println(string(result)) 
} 

常に{"SKIN":{}}のみを出力します。期待値は次のとおりです。

{ 
    "SKIN": { 
     "url": "http://ely.by", 
     "hash": "123123123123123123", 
     "metadata": { 
      "model": "slim" 
     } 
    } 
} 

私はサンドボックスhttps://play.golang.org/p/IHktK6E33Nでこの例を作成しました。

+0

type Metadata struct { Model string } type Texture struct { Url string Hash string Metadata *Metadata } 

は、遊び場の例を更新しました。 – Volker

答えて

関連する問題