Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ErrorHandlerFunc types.ErrorHandlerFunc = func(c *gin.Context, message string, err error) { if message == "" { message = http.StatusText(http.StatusInternalServerError) } if err != nil { _ = c.Error(err) } c.JSON(http.StatusInternalServerError, gin.H{ "status": "Error", "error": message, }) c.Abort() }
ErrorHandlerFunc — функция по умолчанию для обработки ошибок в middleware текущего модуля. Необходима для того чтобы ошибки возникающие в самом пакете gin-router форматировались в нужном стандарте конечного проекта. Отправляет клиенту JSON-ответ с кодом 500 и сообщением об ошибке. Если сообщение пустое, используется стандартный текст статуса HTTP 500. Ошибка также регистрируется через c.Error().
Параметры:
- c: контекст Gin, содержащий запрос и инструменты ответа.
- message: пользовательское сообщение об ошибке.
- err: ошибка, которая будет добавлена в контекст Gin.
Functions ¶
func NewRouterService ¶
func NewRouterService( log *zap.SugaredLogger, cfg types.GetRouterConfig, uni *ut.UniversalTranslator, ) (router.IRouterService, error)
NewRouterService создаёт новый экземпляр сервиса маршрутизации. Принимает логгер и конфигурацию маршрутизатора. Возвращает реализацию IRouterService и ошибку, если создание не удалось. Гарантирует уникальность имён модулей и инициализирует Gin-движки для каждого сервера.
func RecoveryToContext ¶
func RecoveryToContext(c *gin.Context, errTmp any, fmtResponseFunc types.FmtResponseFunc)
RecoveryToContext стандартная универсальная процедура восстанавливает выполнение после паники в Gin-обработчике. Используется в кастомных middleware как процедура перехвата паник по-умолчанию. Захватывает значение паники, преобразует его в ошибку, логирует стек вызовов и устанавливает контекстные данные. В случае "broken pipe" или "connection reset by peer" прерывает обработку запроса без дополнительного логирования. Использует переданную функцию форматирования ответа для отправки клиенту сообщения об ошибке.
Параметры:
- c: контекст Gin, содержащий текущий HTTP-запрос и инструменты для ответа.
- errTmp: произвольное значение паники (обычно строка или ошибка).
- fmtResponseFunc: функция, отвечающая за форматирование и отправку HTTP-ответа об ошибке.
func SetInternalErrorHandler ¶
func SetInternalErrorHandler(f types.ErrorHandlerFunc)
Types ¶
This section is empty.
Source Files
¶
- add_handler_func.go
- add_middlewares.go
- add_package.go
- add_routes.go
- decompress.go
- http_err_handlers.go
- new_router_service.go
- prepare_routes.go
- recovery_to_context.go
- route.go
- types.go
Directories
¶
| Path | Synopsis |
|---|---|
|
Package responseWrapper предоставляет инструмент для перехвата и форматирования HTTP-ответов от внутренних обработчиков в единый структурированный JSON-формат.
|
Package responseWrapper предоставляет инструмент для перехвата и форматирования HTTP-ответов от внутренних обработчиков в единый структурированный JSON-формат. |