개발을 배포할때 설정 파일을 json타입으로 할때가 있습니다.
사용법 혹은 메뉴얼을 작성해서 같이 주긴 하지만, json에 설명을 달아주는게 본인을 위해서도 편합니다.
그래서 주석을 허용하는 reader를 해보려 합니다.
github.com/wuxiangzhou2010/jsonuncommenter 을 사용해서 진행하였습니다.


이걸 써보니 문제가 있습니다. node_name쪽에 주석을 넣어보니 동작 안합니다.
다음포스팅에서는 직접 만들어 봐야겠습니다.
package main
import (
"encoding/json"
"fmt"
"os"
"path"
"github.com/wuxiangzhou2010/jsonuncommenter"
)
type Config struct {
ServiceIp string `json:"service_ip"`
NodeName string `json:"node_name"`
}
func main() {
cwd, err := os.Getwd()
if err != nil {
panic(err)
}
f, err := os.Open(path.Join(cwd, `config.json`))
if err != nil {
panic(err)
}
defer f.Close()
newReader := jsonuncommenter.RemoveComment(f)
jsonParser := json.NewDecoder(newReader)
var config Config
jsonParser.Decode(&config)
fmt.Printf("%+v", config)
}
'Go언어 golang' 카테고리의 다른 글
golang grok / go언어 grok 패턴 (0) | 2023.03.27 |
---|---|
2023-03-24 json decoder 주석 허용 하는 기능 구현 (0) | 2023.03.24 |
golang REST API / go언어 REST API 서버 #6 PUT & DELETE (0) | 2023.03.22 |
golang REST API / go언어 REST API 서버 #5 METHOD GET item (0) | 2023.03.21 |
golang REST API / go언어 REST API 서버. #2 docker mariadb 설치 및 접속 확인 (0) | 2023.03.16 |