middleware

package
v2.0.9 Latest Latest
Warning

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

Go to latest
Published: Aug 5, 2026 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

定义多个 gin 中间件

Index

Constants

View Source
const UsernameKey = "username"

UsernameKey 定义了在 gin 上下文中表示密钥所有者的键

View Source
const (

	// XRequestIDKey 定义 X-Request-ID 键字符串
	XRequestIDKey = "X-Request-ID"
)

Variables

View Source
var ErrLimitExceeded = errors.New("Limit exceeded")

ErrLimitExceeded 定义了限制超出错误

View Source
var Middlewares = defaultMiddlewares()

Middlewares store registered middlewares. 存储注册的中间件

Functions

func APILogger

func APILogger() gin.HandlerFunc

APILogger records HTTP transport metadata only. Request headers, query values, bodies, response headers, bodies and handler error messages are intentionally never inspected.

func Context

func Context() gin.HandlerFunc

Context 是一个中间件,将公共前缀字段注入到 gin.Context 中

func Limit

func Limit(maxEventsPerSec float64, maxBurstSize int) gin.HandlerFunc

Limit 如果达到限制,则丢弃(HTTP 状态 429)请求

func NoCache

func NoCache(c *gin.Context)

NoCache 是一个中间件函数,用于添加头信息,防止客户端缓存 HTTP 响应

func Options

func Options(c *gin.Context)

Options 是一个中间件函数,用于添加头信息,处理 OPTIONS 请求,并中止中间件链和结束请求 注意:生产环境若前有 Nginx/CORS,勿在此处再写 Access-Control-Allow-Origin,否则会与网关叠成「多值」导致浏览器报错。

func Secure

func Secure(c *gin.Context)

Secure 是一个中间件函数,用于添加安全头信息和资源访问头信息 不在此设置 CORS:由前置 Nginx(如 iam.fangcunmount.cn.conf 的 map + add_header)统一出 Allow-Origin,避免与 Gin 重复。

func StreamClientLoggingInterceptor

func StreamClientLoggingInterceptor() grpc.StreamClientInterceptor

StreamClientLoggingInterceptor gRPC流式客户端日志拦截器

func StreamServerLoggingInterceptor

func StreamServerLoggingInterceptor() grpc.StreamServerInterceptor

StreamServerLoggingInterceptor gRPC 流式服务端日志拦截器

func StreamServerLoggingInterceptorWithConfig

func StreamServerLoggingInterceptorWithConfig(config GRPCServerLoggerConfig) grpc.StreamServerInterceptor

StreamServerLoggingInterceptorWithConfig 带配置的 gRPC 流式服务端日志拦截器

func Tracing

func Tracing() gin.HandlerFunc

Tracing 注入 trace_id/span_id/request_id 到请求上下文,便于链路追踪

func UnaryClientLoggingInterceptor

func UnaryClientLoggingInterceptor() grpc.UnaryClientInterceptor

UnaryClientLoggingInterceptor gRPC一元客户端日志拦截器

func UnaryServerLoggingInterceptor

func UnaryServerLoggingInterceptor() grpc.UnaryServerInterceptor

UnaryServerLoggingInterceptor gRPC 一元服务端日志拦截器

func UnaryServerLoggingInterceptorWithConfig

func UnaryServerLoggingInterceptorWithConfig(config GRPCServerLoggerConfig) grpc.UnaryServerInterceptor

UnaryServerLoggingInterceptorWithConfig 带配置的 gRPC 一元服务端日志拦截器

Types

type GRPCServerLoggerConfig

type GRPCServerLoggerConfig struct {
	// SkipMethods 跳过日志记录的方法列表
	SkipMethods []string
}

GRPCServerLoggerConfig gRPC 服务端日志配置

func DefaultGRPCServerLoggerConfig

func DefaultGRPCServerLoggerConfig() GRPCServerLoggerConfig

DefaultGRPCServerLoggerConfig 默认 gRPC 服务端日志配置

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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