middleware

package
v0.1.2 Latest Latest
Warning

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

Go to latest
Published: Jun 9, 2022 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AccessRecord added in v0.1.2

func AccessRecord() gin.HandlerFunc

AccessRecord 访问记录中间件

func Cors added in v0.1.0

func Cors() gin.HandlerFunc

Cors 跨域中间件

func Rate

func Rate(formatted string) gin.HandlerFunc

Rate *

  • @Description:限流中间件(对每个client限流)
  • @param formatted 限流规则
  • 5 reqs/second: "5-S"
  • 10 reqs/minute: "10-M"
  • 1000 reqs/hour: "1000-H"
  • 2000 reqs/day: "2000-D"
  • @return gin.HandlerFunc

Rate 限流中间件

func Rate0

func Rate0(formatted string) gin.HandlerFunc

Rate0 限流中间件(总访问量限流) *

  • @Description:限流中间件
  • @param formatted 限流规则
  • 5 reqs/second: "5-S"
  • 10 reqs/minute: "10-M"
  • 1000 reqs/hour: "1000-H"
  • 2000 reqs/day: "2000-D"
  • @return gin.HandlerFunc

Types

type Record added in v0.1.2

type Record struct {
	global.Model
	Ip             string `json:"ip"                     form:"ip"                   gorm:"column:ip;comment:ip;type:varchar(40);"`
	Method         string `json:"method"                 form:"method"               gorm:"column:method;comment:请求方法;type:varchar(10);"`
	Path           string `json:"path"                   form:"path"                 gorm:"column:path;comment:请求路径;type:text;"`
	Status         int    `json:"status"                 form:"status"               gorm:"column:status;comment:状态码;type:varchar(4);"`
	Latency        int64  `json:"latency"                form:"latency"              gorm:"column:latency;comment:延迟;type:varchar(5);"`
	UserAgent      string `json:"userAgent"              form:"userAgent"            gorm:"column:user_agent;comment:User-Agent;type:text;"`
	Error          string `json:"error"                  form:"error"                gorm:"column:error;comment:错误;type:varchar(255);"`
	Body           string `json:"body"                   form:"body"                 gorm:"column:body;comment:Body;type:text;"`
	Query          string `json:"query"                  form:"query"                gorm:"column:query;comment:Query;type:text;"`
	Header         string `json:"header"                 form:"header"               gorm:"column:header;comment:Header;type:text;"`
	Response       string `json:"response"               form:"response"             gorm:"column:response;comment:响应;type:text;"`
	Location       string `json:"location"               form:"location"             gorm:"column:location;comment:位置;type:varchar(30);"`
	Country        string `json:"country"                form:"country"              gorm:"column:country;comment:国家;type:varchar(255)"`
	Province       string `json:"province"               form:"province"             gorm:"column:province;comment:省;type:varchar(20);"`
	City           string `json:"city"                   form:"city"                 gorm:"column:city;comment:市;type:varchar(20);"`
	District       string `json:"district"               form:"district"             gorm:"column:district;comment:区;type:varchar(20);"`
	Isp            string `json:"isp"                    form:"isp"                  gorm:"column:isp;comment:运营商;type:varchar(20);"`
	Platform       string `json:"platform"               form:"platform"             gorm:"column:platform;comment:平台;type:varchar(50);"`
	OS             string `json:"os"                     form:"os"                   gorm:"column:os;comment:系统;type:varchar(50);"`
	Engine         string `json:"engine"                 form:"engine"               gorm:"column:engine;comment:浏览器引擎;type:varchar(100);"`
	BrowserName    string `json:"browserName"            form:"browserName"          gorm:"column:browser_name;comment:浏览器;type:varchar(200);"`
	BrowserVersion string `` /* 129-byte string literal not displayed */
	Brand          string `json:"brand"                  form:"brand"                gorm:"column:brand;comment:品牌;type:varchar(255);"`
	ProductModel   string `json:"productModel"           form:"productModel"         gorm:"column:product_model;comment:型号;type:varchar(255);"`
	ContentType    string `json:"contentType"            form:"contentType"          gorm:"column:content_type;comment:内容类型;type:varchar(255);"`
}

func (Record) TableName added in v0.1.2

func (Record) TableName() string

TableName 自定义表名

Jump to

Keyboard shortcuts

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