errorhandler

package
v5.1.0 Latest Latest
Warning

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

Go to latest
Published: Jan 11, 2022 License: MIT Imports: 3 Imported by: 1

Documentation

Overview

Package errorhandler 提供自定义错误页面的功能

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func WriteHeader

func WriteHeader(w http.ResponseWriter, status int)

WriteHeader 写入 HTTP 状态值

通过 errorhandler 的封装之后,默认会将注册的状态码 响应重定向到指定的处理函数, 如果不需要特殊处理,可以调用此函数,按照正常流程处理。

Types

type ErrorHandler

type ErrorHandler struct {
	// contains filtered or unexported fields
}

ErrorHandler 错误页面处理函数管理

一旦写入由 ErrorHandler 托管的状态码,会直接中间整个中间件链的执行以 panic 的形式退出。

func New

func New() *ErrorHandler

New 声明 ErrorHandler 变量

func (*ErrorHandler) Add

func (e *ErrorHandler) Add(f HandleFunc, status ...int) (ok bool)

Add 添加针对指定状态码的错误处理函数

NOTE: 如果指定了 400 以下的状态码,那么该状态码也会被当作错误页面进行托管。

func (*ErrorHandler) Exists

func (e *ErrorHandler) Exists(status int) bool

Exists 指定状态码对应的处理函数是否存在

func (*ErrorHandler) Exit

func (e *ErrorHandler) Exit(w http.ResponseWriter, status int)

Exit 以指定的状态码退出当前的协程

Exit 最终是以 panic 的形式退出,所以如果你的代码里截获了 panic, 那么 Exit 并不能达到退出当前请求的操作。

func (*ErrorHandler) Middleware

func (e *ErrorHandler) Middleware(next http.Handler) http.Handler

func (*ErrorHandler) MiddlewareFunc

func (e *ErrorHandler) MiddlewareFunc(next func(http.ResponseWriter, *http.Request)) http.Handler

func (*ErrorHandler) Render

func (e *ErrorHandler) Render(w io.Writer, status int)

Render 向客户端输出指定状态码的错误内容

func (*ErrorHandler) Renderer

func (e *ErrorHandler) Renderer() middleware.MiddlewareFunc

Renderer 返回一个用于输出错误页面的中间件

此中间件应该在 ErrorHandler 中间件的外层调用, 只有这样 ErrorHandler 抛出的代码才能被捕获。

func (*ErrorHandler) Set

func (e *ErrorHandler) Set(f HandleFunc, status ...int)

Set 添加或修改指定状态码对应的处理函数

有则修改,没有则添加,如果 f 为 nil,则表示删除该状态码的处理函数。

NOTE: 如果指定了 400 以下的状态码,那么该状态码也会被当作错误页面进行托管。

type HandleFunc

type HandleFunc func(w io.Writer, status int)

HandleFunc 错误处理函数

Jump to

Keyboard shortcuts

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