middleware

package
v0.0.0-...-869c34b Latest Latest
Warning

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

Go to latest
Published: Jan 17, 2021 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CircuitMW

func CircuitMW() func(c *SliceRouterContext)

CircuitMW 熔断中间件

func RateLimiter

func RateLimiter() func(c *SliceRouterContext)

RateLimiter 限流中间件

func TraceLogSliceMW

func TraceLogSliceMW() func(c *SliceRouterContext)

TraceLogSliceMW 日志中间件

Types

type HandlerFunc

type HandlerFunc func(*SliceRouterContext)

HandlerFunc 回调函数

type SliceGroup

type SliceGroup struct {
	*SliceRouter
	// contains filtered or unexported fields
}

SliceGroup Group 结构体

func (*SliceGroup) Use

func (g *SliceGroup) Use(middlewares ...HandlerFunc) *SliceGroup

Use 构造回调方法

type SliceRouter

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

SliceRouter router 结构体

func NewSliceRouter

func NewSliceRouter() *SliceRouter

NewSliceRouter 构造 router

func (*SliceRouter) Group

func (g *SliceRouter) Group(path string) *SliceGroup

Group 创建 Group

type SliceRouterContext

type SliceRouterContext struct {
	Rw  http.ResponseWriter
	Req *http.Request
	Ctx context.Context
	*SliceGroup
	// contains filtered or unexported fields
}

SliceRouterContext router 上下文

func (*SliceRouterContext) Abort

func (c *SliceRouterContext) Abort()

Abort 跳出中间件方法

func (*SliceRouterContext) Get

func (c *SliceRouterContext) Get(key interface{}) interface{}

Get 获取上下文属性值

func (*SliceRouterContext) IsAborted

func (c *SliceRouterContext) IsAborted() bool

IsAborted 是否跳过了回调

func (*SliceRouterContext) Next

func (c *SliceRouterContext) Next()

Next 从最先加入中间件开始回调

func (*SliceRouterContext) Reset

func (c *SliceRouterContext) Reset()

Reset 重置回调

func (*SliceRouterContext) Set

func (c *SliceRouterContext) Set(key, val interface{})

Set 设置上下文属性值

type SliceRouterHandler

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

SliceRouterHandler xx

func NewSliceRouterHandler

func NewSliceRouterHandler(coreFunc func(*SliceRouterContext) http.Handler, router *SliceRouter) *SliceRouterHandler

NewSliceRouterHandler xx

func (*SliceRouterHandler) ServeHTTP

func (w *SliceRouterHandler) ServeHTTP(rw http.ResponseWriter,
	req *http.Request)

ServeHTTP xx

Jump to

Keyboard shortcuts

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