728x90
반응형
지난 번에 Golang reflect 함수 사용하여 필수 값 체크 함수 만들기. 를 통해서 JSON 필수값을 reflect함수로 찾는 방법을 포스팅 한 적이 있습니다.
저기서는 for문 2개를 돌려서 찾는 방법이였지만 이번엔 validator을 사용하여 심플하게 처리할 수 있는 방법을 소개시켜드리려 합니다.
먼저 패키지를 다운 받아야 합니다.
go get github.com/go-playground/validator/v10
그 후 아래와 같이 구조체를 선언 후, 필수 값으로 지정할 값을 아래와 같이 지정해줍니다.
type ExStruct struct {
A string `json:"a" validate:"required"`
B string `json:"b" validate:"required"`
C string `json:"c" validate:"required"`
}
그 후 체크해주어야 하는 곳에
func check() {
validate := validator.New()
err = validate.Struct(ExStruct)
if err != nil {
fmt.Println("ERROR!!!", err)
}
}
위와 같이 해주시면 됩니다.
err에서 지정한 필수 값이 빈 값인 부분만 출력해주게 되어 따로 로그 남기실 때 err값을 넣어주시면 됩니다.
이렇게 하면 reflect 함수 때보다 훨씬 심플하게 처리 할 수 있게 되었습니다.
728x90
반응형
'프로그래밍(Web) > Golang' 카테고리의 다른 글
[바미] Go 1.18 Release Notes (0) | 2022.02.22 |
---|---|
[바미] Go 1.17 Release Notes (0) | 2022.02.16 |
[바미] Go - os.Args를 이용하여 localhost port 번호 지정하기. (0) | 2021.11.11 |
[바미] Go - Logrus과 lumberjack을 사용하여 Log를 찍어보자! (2) | 2021.06.25 |
[바미] 디버그 모드 시 Version of Delve is too old for this version of Go 에러 뜰 때 해결 방법 (0) | 2021.06.08 |