apperrors

package
v0.0.0-...-4e6b843 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 19, 2024 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func As

func As(err error, target interface{}) bool

As позволяет использовать errors.As для проверки типа ошибки.

func Is

func Is(err, target error) bool

Is позволяет использовать errors.Is для проверки типа ошибки.

Types

type AppError

type AppError struct {
	Code    int    `json:"-"`     // HTTP код ошибки
	Message string `json:"error"` // Сообщение для клиента
	// contains filtered or unexported fields
}

AppError базовая структура для всех ошибок приложения.

func New

func New(code int, message string, err error) *AppError

New создаёт новый объект AppError с заданным кодом, сообщением и вложенной ошибкой.

func NewBadRequestError

func NewBadRequestError(message string) *AppError

NewBadRequestError создаёт ошибку с кодом 400 (Bad Request) и заданным сообщением.

func NewConflictError

func NewConflictError(message string) *AppError

NewConflictError создаёт ошибку с кодом 409 (Conflict) и заданным сообщением.

func NewInternalServerError

func NewInternalServerError(message string, err error) *AppError

NewInternalServerError создаёт ошибку с кодом 500 (Internal Server Error) и вложенной технической ошибкой.

func NewNotFoundError

func NewNotFoundError(message string) *AppError

NewNotFoundError создаёт ошибку с кодом 404 (Not Found) и заданным сообщением.

func NewUnauthorizedError

func NewUnauthorizedError(message string) *AppError

NewUnauthorizedError создаёт ошибку с кодом 401 (Unauthorized) и заданным сообщением.

func (*AppError) Error

func (e *AppError) Error() string

Error реализует интерфейс error.

func (*AppError) Unwrap

func (e *AppError) Unwrap() error

Unwrap позволяет использовать стандартные функции errors.Unwrap для работы с вложенными ошибками.

type ValidationError

type ValidationError struct {
	Message string                 `json:"error"`
	Errors  []ValidationErrorField `json:"validation_errors"` // Список ошибок для каждого поля
}

ValidationError представляет кастомную ошибку валидации

func NewValidationError

func NewValidationError(message string, err error, tran ut.Translator) *ValidationError

NewValidationError создает новую кастомную ошибку валидации на основе ошибок валидатора

func (*ValidationError) Error

func (v *ValidationError) Error() string

Error реализует интерфейс error

type ValidationErrorField

type ValidationErrorField struct {
	Field   string `json:"field"`   // Название поля (имя переменной в структуре)
	Message string `json:"message"` // Сообщение об ошибке для этого поля
}

ValidationErrorField представляет ошибку валидации для конкретного поля

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL