reprogl

Форк
0
/
recoverer.go 
22 строки · 442.0 Байт
1
package middlewares
2

3
import (
4
	"errors"
5
	"fmt"
6
	"net/http"
7

8
	"xelbot.com/reprogl/container"
9
)
10

11
func Recover(next http.Handler, app *container.Application) http.Handler {
12
	return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
13
		defer func() {
14
			if rvr := recover(); rvr != nil && rvr != http.ErrAbortHandler {
15
				err := errors.New(fmt.Sprintf("%v", rvr))
16
				app.ServerError(w, err)
17
			}
18
		}()
19

20
		next.ServeHTTP(w, r)
21
	})
22
}
23

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.