コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【golang】struct field XXXX has json tag but is not exported

概要

struct field XXXX has json tag but is not exported

構造体の変数に json タグを付けた時に上記の警告が表示された場合、
構造体の変数名の先頭が大文字になっていない可能性があります

type Character struct {
    id   int    `json:"id"`
    name string `json:"name"`
}

例えば、このように id と name に json タグを付けて
json.Marshal したとしても、JSON として出力されません

type Character struct {
    Id   int    `json:"id"`
    Name string `json:"name"`
}

このように変数名の先頭を大文字にして json タグを付けることで
json.Marshal で正常に JSON として出力されるようになります

参考サイト様