Как работать с validator пакетом?

Middle
235 просмотров
AFK Offer AI

go-playground/validator — стандарт де-факто. Создаёшь validate := validator.New(), вызываешь err := validate.Struct(req). Ошибки — validator.ValidationErrors, итерируешь и формируешь ответ: field, tag, param. Для JSON полей добавь validate.RegisterTagNameFunc — чтобы ошибки показывали JSON имя, а не Go имя поля. Кастомный валидатор: validate.RegisterValidation("phone", phoneValidator). Один инстанс на приложение — он потокобезопасный.

Следующий вопрос

Как работает runtime.GC?