Клиент отправил поле с опечаткой, получил 200, а настройка не сохранилась
var req UpdateSettings // поле NotifyEmail с тегом json:"notify_email"
if err := json.NewDecoder(r.Body).Decode(&req); err != nil {
http.Error(w, "bad request", http.StatusBadRequest)
return
}
Клиент прислал {"notify_emial": false}. Сервис ответил 200, но настройка не изменилась. Как сделать, чтобы опечатка возвращала ошибку?
- Вызвать DisallowUnknownFields у декодера
- Использовать json.Unmarshal вместо Decoder
- Сделать поле структуры указателем
- Добавить тег omitempty к полю
