반응형
Go 언어의 Json
참고: https://www.joinc.co.kr/w/man/12/golang/json
JSON Tag
encoding/json 패키지의 경우 아래와 같이 Tag를 이용해서 마샬/언마샬 방식을 설정 할 수 있습니다.
type RequestCreateOpenChannel struct {
Name string `json:"name"`
ChannelUrl string `json:"channel_url"`
CustomType string `json:"custom_type"`
Data string `json:"data"`
IsDynamicPartitioned bool `json:"is_dynamic_partitioned"`
}
omitempty
omit empty : 비어 있으면 생략한다.
값을 입력하지 않지 않으면 json에서 제외 할 수 있습니다.
type ResponseOkCreateOpenChannel struct {
Name string `json:"name"`
ChannelUrl string `json:"channel_url"`
CustomType string `json:"custom_type"`
ParticipantCount int32 `json:"participant_count"`
CreatedAt int64 `json:"created_at"`
Data string `json:"data,omitempty"` //opmitempty를 설정하여 값을 설정하지 않으면 json에서 제외하도록 합니다.
Freeze bool `json:"freeze"`
}
필드 제외
`json:"-"`로 설정하여 json에서 제외 시킵니다.
type ResponseOkCreateOpenChannel struct {
Name string `json:"name"`
ChannelUrl string `json:"channel_url"`
CustomType string `json:"custom_type"`
ParticipantCount int32 `json:"participant_count"`
CreatedAt int64 `json:"created_at"`
Data string `json:"data,omitempty"`
Freeze bool `json:"-"` // json에서 제외
}
'프로그래밍 일반 > Go 프로그래밍' 카테고리의 다른 글
[go] Context 활용하기 (0) | 2024.11.07 |
---|---|
[Go] Slice 기능 요약 (1) | 2024.04.22 |
Go 언어 Json 태그 자동 추가/삭제 (0) | 2024.04.18 |
GoLand 여러개 열기 (0) | 2024.04.17 |
C++ 개발자를 위한 Go 언어 요약 정리 (1) | 2024.04.15 |