internal

package
v0.0.0-...-38e7ffe Latest Latest
Warning

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

Go to latest
Published: Apr 19, 2026 License: MIT Imports: 28 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
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-формат.

Jump to

Keyboard shortcuts

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