A demonstration on validating user input with optional fields
git clone https://github.com/eastrocky/validate-optional-fields.git && cd validate-optional-fields/
go build
./validate-optional-fields
curl -X POST \
-d '{"favoriteNumber": 12}' \
localhost:8080/payload
{
"code":400,
"message":"Key: 'Payload.FavoriteNumber' Error:Field validation for 'FavoriteNumber' failed on the 'max' tag",
"status":"Bad Request"
}
curl -X POST \
-d '{"favoriteNumber": 2}' \
localhost:8080/payload
{
"code":200,
"message":"Your favoriteNumber is 2",
"status":"OK"
}
curl -X POST \
-d '{}' \
localhost:8080/payload
{
"code":200,
"message":"You did not provide favoriteNumber",
"status":"OK"
}