17 lines
587 B
Go
17 lines
587 B
Go
package utils
|
|
|
|
import (
|
|
"github.com/go-playground/validator/v10"
|
|
"github.com/gofiber/fiber/v2"
|
|
)
|
|
|
|
func ValidateRequest(c *fiber.Ctx, request interface{}) (*HTTPResponse, error) {
|
|
if err := c.BodyParser(request); err != nil {
|
|
return NewHTTPResponse(fiber.StatusBadRequest, &fiber.Map{"message": "Invalid request body"}, "", nil, nil), err
|
|
}
|
|
if err := validator.New().Struct(request); err != nil {
|
|
return NewHTTPResponse(fiber.StatusBadRequest, &fiber.Map{"message": "Invalid request body"}, "", nil, nil), err
|
|
}
|
|
return NewHTTPResponse(fiber.StatusOK, nil, "", nil, nil), nil
|
|
}
|