http类

package
v0.0.0-...-7e18bce Latest Latest
Warning

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

Go to latest
Published: Sep 4, 2024 License: MIT Imports: 83 Imported by: 0

Documentation

Overview

包ghttp提供了强大的HTTP服务器和简单的客户端实现。 md5:0b6b4fc969b3488d

Index

Constants

View Source
const (
	HeaderXUrlPath                 = "x-url-path"         // 用于自定义路由处理器,它不会改变URL.Path。 md5:50133279ebd50b30
	HookBeforeServe       Hook名称   = "HOOK_BEFORE_SERVE"  // 路由处理程序或文件服务之前的钩子处理器。 md5:cf35e94a36837514
	HookAfterServe        Hook名称   = "HOOK_AFTER_SERVE"   // 路由处理器或文件服务后的钩子处理程序。 md5:d236c9c1ff9f9847
	HookBeforeOutput      Hook名称   = "HOOK_BEFORE_OUTPUT" // 在输出响应之前处理挂钩。 md5:4d8f72553e739005
	HookAfterOutput       Hook名称   = "HOOK_AFTER_OUTPUT"  // 在响应输出后处理钩子。 md5:4a1980ddfff8dda6
	ServerStatusStopped   X服务状态    = 0
	ServerStatusRunning   X服务状态    = 1
	DefaultServerName              = "default"
	DefaultDomainName              = "default"
	HandlerTypeHandler    X路由处理器类型 = "handler"
	HandlerTypeObject     X路由处理器类型 = "object"
	HandlerTypeMiddleware X路由处理器类型 = "middleware"
	HandlerTypeHook       X路由处理器类型 = "hook"
)
View Source
const (
	UriTypeDefault  = iota // 将方法名称转换为URI的类型,该类型将名称转换为小写,并使用字符'-'连接单词。 md5:1fc3cb97052e806f
	UriTypeFullName        // 将方法名称转换为URI转换类型,但不将其转换为方法名称。 md5:75ab2b02cd49ae6b
	UriTypeAllLower        // 转换方法名称为URI的类型,将名称转换为小写。 md5:ed7460ac07fbb91a
	UriTypeCamel           // 将方法名称转换为URI的类型,该类型将名称转换为驼峰式命名。 md5:2e028fc00d70d9bf
)
View Source
const (
	// WsMsgText TextMessage 表示一个文本数据消息。
	// 文本消息的有效负载被解释为UTF-8编码的文本数据。
	// md5:2212894321ec5f57
	WsMsgText = websocket.TextMessage

	// WsMsgBinary 表示一个二进制数据消息。 md5:a65808b202eac553
	WsMsgBinary = websocket.BinaryMessage

	// WsMsgClose CloseMessage 表示一个关闭控制消息。可选的消息负载包含一个数字代码和文本。使用 FormatCloseMessage 函数格式化关闭消息负载。
	// md5:a469c715d4927f73
	WsMsgClose = websocket.CloseMessage

	// WsMsgPing PingMessage 表示一个ping控制消息。可选的消息负载是UTF-8编码的文本。
	// md5:be2bfff84d685414
	WsMsgPing = websocket.PingMessage

	// WsMsgPong PongMessage 表示一个 pong 控制消息。
	// 可选的消息负载是 UTF-8 编码的文本。
	// md5:7fd652a30abef63d
	WsMsgPong = websocket.PongMessage
)
View Source
const (
	// X空闲端口地址 标记服务器使用随机的空闲端口进行监听。 md5:16e8ca0633c4a135
	X空闲端口地址 = ":0"
)

Variables

View Source
var (
	ERR请求体必须json格式 = gerror.NewWithOption(gerror.Option{
		Text: "the request body content should be JSON format",
		Code: gcode.CodeInvalidRequest,
	})
)

Functions

func MiddlewareHandlerResponse

func MiddlewareHandlerResponse(r *Request)

MiddlewareHandlerResponse 是默认的处理handler响应对象及其错误的中间件。 md5:d59676d7f703b4b1

func MiddlewareNeverDoneCtx

func MiddlewareNeverDoneCtx(r *Request)

MiddlewareNeverDoneCtx为当前进程设置永不完成的上下文。 md5:82de09cee1c428a4

func PProf服务端创建

func PProf服务端创建(监听端口 int, 作废参数 ...string)

PProf服务端创建 启动并运行一个新的pprof服务器。 md5:4c0c47dfda03a84b

func X中间件函数_验证JSON格式请求体

func X中间件函数_验证JSON格式请求体(r *Request)

X中间件函数_验证JSON格式请求体 验证并返回请求体是否为JSON格式。 md5:861efc2736ae2e13

func X中间件跨域函数

func X中间件跨域函数(r *Request)

X中间件跨域函数 是一个使用默认选项的CORS中间件处理器。 md5:522ca96c4772b84d

func X取所支持的HTTP方法

func X取所支持的HTTP方法() []string

X取所支持的HTTP方法 返回所有支持的HTTP方法。 md5:1fc8637928ce346f

func X平滑关闭所有服务

func X平滑关闭所有服务(上下文 context.Context) error

X平滑关闭所有服务 优雅地关闭当前进程中的所有服务器。 md5:1eb1bf001c79c66c

func X平滑重启所有服务

func X平滑重启所有服务(上下文 context.Context, 新可执行文件路径 string) error

X平滑重启所有服务 优雅地重启进程中的所有服务器。 可选参数 `newExeFilePath` 指定了用于创建进程的新二进制文件路径。 md5:cd148e150eddefe2

func X生成请求参数

func X生成请求参数(参数 interface{}, 不进行URL编码 ...bool) (请求参数 string)

X生成请求参数 为 httpClient 构建请求字符串。`params` 可以是以下类型之一: string/[]byte/map/struct/*struct。

可选参数 `noUrlEncode` 指定是否忽略数据的 URL 编码。 md5:6816cb48e0c8752b

func X等待所有服务完成

func X等待所有服务完成()

X等待所有服务完成 会阻塞等待所有服务器完成。它通常用于多服务器情况。 md5:69d8345a5fb12619

Types

type CORSOptions

type CORSOptions struct {
	AllowDomain      []string // 用于允许来自自定义域名的请求. md5:3050713aeb6de06c
	AllowOrigin      string   // Access-Control-Allow-Origin 是一个HTTP响应头字段,用于指定浏览器在进行跨域请求时可以访问资源的源(Origin)。 md5:64b1bac364c85a72
	AllowCredentials string   // 允许凭证访问控制. md5:9413744affc62151
	ExposeHeaders    string   // Access-Control-Expose-Headers:这是HTTP响应头的一部分,用于指定哪些响应头可以被CORS(跨源资源共享)策略允许从服务器传递到客户端。 md5:edb32baedc37800f
	MaxAge           int      // Access-Control-Max-Age
	AllowMethods     string   // 跨域资源共享允许的方法. md5:c78ddd1745514f4a
	AllowHeaders     string   // Access-Control-Allow-Headers:允许的头部字段. md5:9812fd3132d19ca6
}

CORSOptions 是 CORS 功能的选项。 参见 https://www.w3.org/TR/cors/ 。 md5:86678849c932cd8d

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

用于HTTP_COOKIE管理的Cookie。 md5:5990685f9449a6df

func X取cookie对象

func X取cookie对象(r *Request) *Cookie

X取cookie对象 通过给定的请求创建或检索一个cookie对象。 如果已经存在与给定请求匹配的cookie对象,它将检索并返回该对象。 如果不存在与给定请求匹配的cookie对象,它将创建一个新的cookie对象并返回。 md5:5b2b3a376a2f6162

func (*Cookie) X删除cookie

func (c *Cookie) X删除cookie(名称, 域名, 路径 string)

X删除cookie 使用给定的域名和路径从cookie中删除指定的键及其值。实际上,它告诉HTTP客户端该cookie已过期,下次不要将其发送到服务器。 md5:a437da6ed4ded047

func (*Cookie) X删除值

func (c *Cookie) X删除值(名称 string)

X删除值 从使用默认域名和路径的cookie中删除指定键及其值。实际上,它告诉HTTP客户端该cookie已过期,下次不要将其发送到服务器。 md5:4c429c6b33ce790c

func (*Cookie) X取Map

func (c *Cookie) X取Map() map[string]string

X取Map将Cookie项作为map[string]string返回。 md5:6d265855ff6356fa

func (*Cookie) X取SessionId

func (c *Cookie) X取SessionId() string

X取SessionId 从cookie中检索并返回session ID。 md5:4b41d62448c6f135

func (*Cookie) X取值

func (c *Cookie) X取值(名称 string, 默认值 ...string) *gvar.Var

X取值 获取并返回具有指定键的值。 如果指定的键不存在,并且提供了默认值`def`,则返回`def`。 md5:f137dd1311660ee4

func (*Cookie) X是否已过期

func (c *Cookie) X是否已过期(名称 string) bool

X是否已过期 检查给定的键是否存在于cookie中且未过期。 md5:acb79130bbbf78e6

func (*Cookie) X设置SessionId到Cookie

func (c *Cookie) X设置SessionId到Cookie(id string)

X设置SessionId到Cookie 在cookie中设置会话ID。 md5:56899c22c78f2267

func (*Cookie) X设置cookie

func (c *Cookie) X设置cookie(名称, 值, 域名, 路径 string, 最大存活时长 time.Duration, 安全配置项 ...CookieOptions)

X设置cookie 设置具有给定域名、路径和过期时间的cookie项。 可选参数`options`指定了额外的安全配置,通常为空。 md5:2afc45e40597ce0d

func (*Cookie) X设置httpcookie

func (c *Cookie) X设置httpcookie(httpCookie *http.Cookie)

X设置httpcookie 使用*http.Cookie设置cookie。 md5:de525635cedd10e4

func (*Cookie) X设置值

func (c *Cookie) X设置值(key, value string)

X设置值 使用默认域名、路径和过期时间来设置cookie项。 md5:66be80c8c6c07dc1

func (*Cookie) X输出

func (c *Cookie) X输出()

X输出 将cookie项输出到客户端。 md5:77b1f132a9910559

type CookieOptions

type CookieOptions struct {
	SameSite http.SameSite // cookie 的 SameSite 属性. md5:4365fbb8775da6c6
	Secure   bool          // cookie Secure property
	HttpOnly bool          // Cookie 的 HttpOnly 属性. md5:77d9da6c97c6713d
}

CookieOptions 提供了 cookie 的安全配置. md5:538f164732c20846

type DefaultHandlerResponse

type DefaultHandlerResponse struct {
	Code    int         `json:"code"    dc:"Error code"`
	Message string      `json:"message" dc:"Error message"`
	Data    interface{} `json:"data"    dc:"Result data for certain request according API definition"`
}

DefaultHandlerResponse是HandlerResponse的默认实现。 md5:9340fa71a0d9e8f7

type Domain

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

Domain 用于域名的路由注册。 md5:c83832d3612fc101

func (*Domain) PProf开启

func (d *Domain) PProf开启(路由地址 ...string)

PProf开启 为指定域名的服务器启用 PProf 功能。 md5:46c19e5f1d55beb1

func (*Domain) Use别名

func (d *Domain) Use别名(处理函数 ...HandlerFunc)

Use别名向域添加中间件。 md5:4aeb37c314d609f3

func (*Domain) X创建分组路由

func (d *Domain) X创建分组路由(分组前缀 string, 分组函数 ...func(分组路由 *X分组路由)) *X分组路由

X创建分组路由 创建并返回一个 RouterGroup 对象,该对象绑定到指定的域名。 md5:bd60cfbd62234fcd

func (*Domain) X绑定

func (d *Domain) X绑定(路由规则 string, 处理函数 interface{})

X绑定 为指定的模式绑定处理器。 md5:91d1c2e239074063

func (*Domain) X绑定Hook

func (d *Domain) X绑定Hook(路由规则 string, 触发时机 Hook名称, 处理函数 HandlerFunc)

X绑定Hook 为指定的模式绑定钩子处理器。 md5:c2455777873cd92a

func (*Domain) X绑定HookMap

func (d *Domain) X绑定HookMap(路由规则 string, HookMap map[Hook名称]HandlerFunc)

X绑定HookMap 为指定的模式绑定钩子处理程序。 md5:39439ccca98ce817

func (*Domain) X绑定RESTfulAPI对象

func (d *Domain) X绑定RESTfulAPI对象(路由规则 string, 处理对象 interface{})

X绑定RESTfulAPI对象 为指定模式绑定RESTful API。 md5:c63a87d6bb5ebd6c

func (*Domain) X绑定中间件

func (d *Domain) X绑定中间件(路由规则 string, 处理函数 ...HandlerFunc)

X绑定中间件 为指定的模式绑定中间件。 md5:40c97b890ebb105a

func (*Domain) X绑定对象

func (d *Domain) X绑定对象(路由规则 string, 处理对象 interface{}, 方法名 ...string)

X绑定对象 将对象绑定到指定的模式。 md5:3beffc65c22e5098

func (*Domain) X绑定对象方法

func (d *Domain) X绑定对象方法(路由规则 string, 处理对象 interface{}, 方法 string)

X绑定对象方法 为指定的模式绑定方法。 md5:44230959de888ace

func (*Domain) X绑定状态码中间件

func (d *Domain) X绑定状态码中间件(状态码 int, 处理函数 HandlerFunc)

X绑定状态码中间件 为指定的模式绑定状态处理器。 md5:5cb032dd618649e2

func (*Domain) X绑定状态码中间件Map

func (d *Domain) X绑定状态码中间件Map(中间件Map map[int]HandlerFunc)

X绑定状态码中间件Map 为指定的模式绑定状态处理器。 md5:04388d53c4410f82

func (*Domain) X绑定默认中间件

func (d *Domain) X绑定默认中间件(处理函数 ...HandlerFunc)

X绑定默认中间件 为指定的模式绑定默认中间件。 md5:792e7f694ab5eeb3

type HandlerFunc

type HandlerFunc = func(r *Request)

HandlerFunc是一个请求处理函数。 md5:9d90773cd75863ca

func WrapF

func WrapF(f http.HandlerFunc) HandlerFunc

WrapF 是一个辅助函数,用于包装http.HandlerFunc并返回一个ghttp.HandlerFunc。 md5:f1b5a37e2bddfd19

func WrapH

func WrapH(h http.Handler) HandlerFunc

WrapH 是一个辅助函数,用于包装 http.Handler,并返回一个 ghttp.HandlerFunc。 md5:0d35a772811803c8

type Hook名称

type Hook名称 string

Hook名称是路由钩子名称枚举类型。 md5:9e0295b925c0c40f

type Plugin

type Plugin interface {
	X名称() string          // Name 返回插件的名称。 md5:2db3d61fbe59c133
	X作者() string          // Author返回插件的作者。 md5:1b32b0dc8d2dde4d
	X版本() string          // Version 返回插件的版本号,例如 "v1.0.0"。 md5:d00cdffa2274f882
	X描述() string          // Description 返回插件的描述。 md5:b3440b3816c4f5af
	Install(s *X服务) error // Install 在服务器启动之前安装插件。 md5:8ba67273b69cfbb3
	Remove() error        // Remove 在服务器关闭时移除插件。 md5:873b1d7c56ba7013
}

Plugin是服务器插件的接口。 md5:f625001233bdb03a

type Request

type Request struct {
	*http.Request
	X服务        *X服务              // Server.
	Cookie     *Cookie           // Cookie.
	Session    *gsession.Session // Session.
	X响应        *Response         // 对应于此请求的响应。 md5:aca9c7c1b8de7fd3
	X路由        *X路由              // Matched Router for this request. Note that it's not available in HOOK handler.
	EnterTime  *gtime.Time       // 请求开始时间(以毫秒为单位)。 md5:c8ed1608de735520
	LeaveTime  *gtime.Time       // 结束时间(以毫秒为单位)的请求。 md5:d10eec1013ccf8ce
	X中间件管理器    *middleware       // Middleware manager.
	StaticFile *staticFile       // 用于静态文件服务的静态文件对象。 md5:c9ba568602380c10
	// contains filtered or unexported fields
}

Request 是请求的上下文对象。 md5:90c1e82eacf87b05

func X从上下文取请求对象

func X从上下文取请求对象(上下文 context.Context) *Request

X从上下文取请求对象 从上下文中检索并返回Request对象。 md5:c247eac3d031fb2b

func (*Request) Context别名

func (r *Request) Context别名() context.Context

Context别名 是函数 GetCtx 的别名。 这个函数重写了 http.Request.Context别名 函数。 参考 GetCtx 函数。 md5:cc1d0847fad835ae

func (*Request) GetMapStrStr别名

func (r *Request) GetMapStrStr别名(默认值 ...map[string]interface{}) map[string]string

GetMapStrStr别名是GetRequestMapStrStr的别名,提供便捷的功能。详情请参阅GetRequestMapStrStr。 md5:1828f3886ccd906d

func (*Request) GetMap别名

func (r *Request) GetMap别名(默认值 ...map[string]interface{}) map[string]interface{}

GetMap别名 是 GetRequestMap 函数的别名,提供便利的使用方式。 参考 GetRequestMap。 md5:395e8bbf3fea416a

func (*Request) GetNeverDoneCtx

func (r *Request) GetNeverDoneCtx() context.Context

GetNeverDoneCtx 创建并返回一个永不完成的上下文对象, 允许在手动完成上下文之前,使得该上下文可以传播到异步goroutine中, 不受HTTP请求结束的影响。

这个更改是考虑到开发人员在单个HTTP请求中创建多个goroutine时,常见的上下文传播习惯。 md5:14245b7febbf75b4

func (*Request) GetSchema

func (r *Request) GetSchema() string

GetSchema 返回此请求的架构。 md5:7bbb51fb51117978

func (*Request) GetStruct别名

func (r *Request) GetStruct别名(结构指针 interface{}, mapping ...map[string]string) error

GetStruct别名 是 GetRequestStruct 的别名和便捷函数。详情请参阅 GetRequestStruct。 md5:c558debb875b77cd

func (*Request) Get别名

func (r *Request) Get别名(名称 string, 默认值 ...interface{}) *gvar.Var

Get别名 是 GetRequest 的别名,它是用于检索参数的最常用函数之一。 请参见 r.GetRequest。 md5:80825e01a3c06041

func (*Request) MakeBodyRepeatableRead

func (r *Request) MakeBodyRepeatableRead(repeatableRead bool) []byte

MakeBodyRepeatableRead 标记请求体是否可以重复读取。它还会返回当前请求体的内容。 md5:3cda0a2da5c712d7

func (*Request) X升级为websocket请求

func (r *Request) X升级为websocket请求() (*WebSocket, error)

将当前请求升级为X升级为websocket请求请求。 如果成功,返回一个新的X升级为websocket请求对象,如果失败,则返回错误。 注意,请求必须是X升级为websocket请求请求,否则升级肯定会失败。

警告:将来将被移除,请使用第三方X升级为websocket请求库代替。 md5:68ad17d4740330b2

func (*Request) X取SessionId

func (r *Request) X取SessionId() string

X取SessionId 从cookie或header中检索并返回会话ID。 md5:06fb7350f9f5597f

func (*Request) X取URL

func (r *Request) X取URL() string

X取URL 返回本次请求的当前URL。 md5:8be855812fe4346f

func (*Request) X取multipart表单对象

func (r *Request) X取multipart表单对象() *multipart.Form

X取multipart表单对象 解析并返回表单为多部分形式。 md5:c80c641ed3887bea

func (*Request) X取multipart表单文件数组对象

func (r *Request) X取multipart表单文件数组对象(名称 string) []*multipart.FileHeader

X取multipart表单文件数组对象 解析并返回表单中的文件数组。 请注意,请求表单的类型应该是multipart。 md5:33503fc76a60c149

func (*Request) X取上下文对象

func (r *Request) X取上下文对象() context.Context

X取上下文对象 获取并返回请求的上下文。 它是函数Context的别名,与SetCtx函数相关联。 md5:67b84a74829ae7e1

func (*Request) X取上下文对象值

func (r *Request) X取上下文对象值(名称 interface{}, 默认值 ...interface{}) *gvar.Var

X取上下文对象值 根据给定的键名获取并返回一个 Var。 可选参数 `def` 指定了如果给定的 `key` 在上下文中不存在时,Var 的默认值。 md5:8e874c6ac730ae7b

func (*Request) X取上传文件对象

func (r *Request) X取上传文件对象(名称 string) *UploadFile

X取上传文件对象 通过指定的表单名称检索并返回上传中的文件。 此函数用于检索使用multipart/form-data内容类型上传的单个文件对象。

如果检索失败或没有给定名称的表单文件被上传,它将返回nil。

注意,`name` 是客户端multipart表单中文件字段的名称。 md5:a49268bd7e014ab6

func (*Request) X取上传文件数组对象

func (r *Request) X取上传文件数组对象(名称 string) UploadFiles

X取上传文件数组对象 用于检索并返回具有指定表单名称的多个上传文件。 此函数用于获取多个上传文件对象,这些对象是使用多部分表单内容类型上传的。

如果检索失败或没有给定名称的表单文件被上传,则返回nil。

注意,`name` 是来自客户端的多部分表单中的文件字段名称。 md5:cbbf4db398137505

func (*Request) X取主机名

func (r *Request) X取主机名() string

X取主机名 返回当前请求的主机名,可能是不带端口的域名或IP。 md5:3a06fa36ddefd149

func (*Request) X取分页类

func (r *Request) X取分页类(总数据量, 每页大小 int) *gpage.Page

X取分页类 根据给定的`totalSize`和`pageSize`创建并返回分页对象。 请注意,来自客户端的分页参数名称常量定义为gpage.DefaultPageName,以简化和方便使用。 md5:4d3bd97d937b25b8

func (*Request) X取协议头值

func (r *Request) X取协议头值(名称 string) string

X取协议头值 获取并返回给定`key`对应的头值。 md5:3088bb7beaf8a754

func (*Request) X取参数

func (r *Request) X取参数(名称 string, 默认 ...interface{}) *gvar.Var

X取参数 从客户端获取并返回名为 `key` 的参数,以及作为接口传递的自定义参数。无论客户端使用何种HTTP方法。如果`key`不存在,`def`参数指定了默认值。

X取参数 是最常用的用于检索参数的函数之一。

注意,如果有多个同名参数,将按照以下优先级顺序进行获取和覆盖:路由器 < 查询参数 < 身份验证 < 表单数据 < 自定义参数。 md5:a008e7f428967448

func (*Request) X取参数到Map

func (r *Request) X取参数到Map(kvMap ...map[string]interface{}) map[string]interface{}

X取参数到Map 从客户端获取并返回所有传递的参数及自定义参数,无论客户端使用的是哪种HTTP方法。参数 `kvMap` 指定了从客户端参数中提取的键,关联的值是在客户端未传递相应键时的默认值。

X取参数到Map 是最常用于检索参数的函数之一。

注意,如果有多个同名参数,参数将按照优先级顺序被获取及覆盖:路由参数 < 查询参数 < 请求体参数 < 表单参数 < 自定义参数。 md5:b01ba4caf2092f12

func (*Request) X取参数到MapStrStr

func (r *Request) X取参数到MapStrStr(kvMap ...map[string]interface{}) map[string]string

X取参数到MapStrStr 从客户端和自定义参数中获取并返回所有传递的参数,无论客户端使用何种HTTP方法。参数`kvMap`指定了从客户端参数中检索的键,关联的值是客户端未传递时的默认值。 md5:18e353330403d45b

func (*Request) X取参数到Map泛型类

func (r *Request) X取参数到Map泛型类(kvMap ...map[string]interface{}) map[string]*gvar.Var

X取参数到Map泛型类 从客户端和自定义参数中检索并返回所有传递的参数,作为map[string]*gvar.Var。无论客户端使用何种HTTP方法,都会进行检索。参数`kvMap`指定了从客户端参数中获取的键,关联的值是客户端未传递时的默认值。 md5:1063c291381a5048

func (*Request) X取参数到结构体

func (r *Request) X取参数到结构体(结构体指针 interface{}, 名称映射 ...map[string]string) error

X取参数到结构体 无论客户端使用何种HTTP方法,都会获取客户端传递的所有参数和自定义参数, 并将它们转换为结构体对象。注意,参数`pointer`是一个指向结构体对象的指针。 可选参数`mapping`用于指定键到属性的映射。 md5:a117b2c0722fc3fe

func (*Request) X取响应对象及错误信息

func (r *Request) X取响应对象及错误信息() interface{}

X取响应对象及错误信息 获取并返回处理器响应对象及其错误信息。 md5:d6ef2cb1d4fef297

func (*Request) X取客户端IP地址

func (r *Request) X取客户端IP地址() string

X取客户端IP地址 返回此请求的客户端IP(不包含端口号)。 注意,此IP地址可能已被客户端头部信息修改。 md5:54dc4a1d4744646a

func (*Request) X取引用来源URL

func (r *Request) X取引用来源URL() string

X取引用来源URL 返回此请求的引荐来源。 md5:4684519c6f7dc2c0

func (*Request) X取查询参数到Map

func (r *Request) X取查询参数到Map(kvMap ...map[string]interface{}) map[string]interface{}

X取查询参数到Map 从客户端通过HTTP GET方法传递的所有参数中检索并返回它们作为映射。参数 `kvMap` 指定了从客户端参数中获取的键,如果客户端未提供,则关联的值为默认值。

注意,如果有多个具有相同名称的参数,将按照优先级顺序检索和覆盖:查询参数 > 身体(请求体)参数。 md5:72471cd6457be5f2

func (*Request) X取查询参数到MapStrStr

func (r *Request) X取查询参数到MapStrStr(kvMap ...map[string]interface{}) map[string]string

X取查询参数到MapStrStr 获取并返回所有通过HTTP GET方法从客户端传递过来的参数,作为一个

map[string]string。参数 `kvMap` 指定了从客户端参数中提取的键

,关联的值是如果客户端没有传递时的默认值。 md5:b1d5d46b8cc53f3a

func (*Request) X取查询参数到Map泛型类数组

func (r *Request) X取查询参数到Map泛型类数组(kvMap ...map[string]interface{}) map[string]*gvar.Var

X取查询参数到Map泛型类数组 从使用 HTTP GET 方法传递的客户端参数中获取并返回所有参数,形式为 map[string]*gvar.Var。参数 `kvMap` 指定了要从客户端参数中获取的键,对应的值是如果客户端未传递时的默认值。 md5:3db7496b4b165e99

func (*Request) X取查询参数到泛型类

func (r *Request) X取查询参数到泛型类(名称 string, 默认值 ...interface{}) *gvar.Var

X取查询参数到泛型类 从查询字符串和请求体中检索并返回给定名称 `key` 的参数。如果 `key` 不在查询中并且提供了 `def`,则返回 `def`;否则返回 nil。

注意,如果有多个同名的参数,将按照优先级顺序进行检索和覆盖:查询参数 > 身体参数。 md5:3948868b7e507e93

func (*Request) X取查询参数到结构体

func (r *Request) X取查询参数到结构体(结构体指针 interface{}, mapping ...map[string]string) error

X取查询参数到结构体 从客户端通过HTTP GET方法获取所有传递的参数,并将它们转换为给定的结构体对象。请注意,参数`pointer`是指向结构体对象的指针。可选参数`mapping`用于指定键到属性的映射。 md5:7061a83f935b7317

func (*Request) X取模板对象

func (r *Request) X取模板对象() *gview.View

X取模板对象 返回此请求的模板视图引擎对象。 md5:1eb5934f5359a959

func (*Request) X取自定义参数到泛型类

func (r *Request) X取自定义参数到泛型类(名称 string, 默认值 ...interface{}) *gvar.Var

X取自定义参数到泛型类 通过给定的名称 `key` 返回自定义参数。 如果 `key` 不存在,它将返回 `def`。 如果没有传递 `def`,它将返回 nil。 md5:4fe03a677e843703

func (*Request) X取表单值到Map

func (r *Request) X取表单值到Map(kvMap ...map[string]interface{}) map[string]interface{}

X取表单值到Map 从客户端获取并返回所有的表单参数,以map形式。参数`kvMap`指定了从客户端参数中检索的键,如果客户端未传递,则关联的值为默认值。 md5:bc80893a54c1e60c

func (*Request) X取表单值到MapStrStr

func (r *Request) X取表单值到MapStrStr(kvMap ...map[string]interface{}) map[string]string

X取表单值到MapStrStr 获取并以map[string]string的形式返回客户端传递的所有表单参数。 参数 `kvMap` 指定了从客户端参数中提取的键,如果客户端未传递,则关联的值是默认值。 md5:09a548d91ee42cff

func (*Request) X取表单值到Map泛型类

func (r *Request) X取表单值到Map泛型类(kvMap ...map[string]interface{}) map[string]*gvar.Var

X取表单值到Map泛型类 从客户端传递的所有表单参数中获取并返回一个 map[string]*gvar.Var。 参数 `kvMap` 指定了要从客户端参数中检索的键,对应的值是如果客户端未传递时的默认值。 md5:0e9cf1899de0705b

func (*Request) X取表单值到泛型类

func (r *Request) X取表单值到泛型类(名称 string, 默认值 ...interface{}) *gvar.Var

X取表单值到泛型类 从表单中检索并返回键为 `key` 的参数。如果表单中不存在 `key`,并且提供了默认值 `def`,则返回 `def`;否则返回 `nil`。 md5:f4a13744025f01b8

func (*Request) X取表单值到结构

func (r *Request) X取表单值到结构(结构指针 interface{}, mapping ...map[string]string) error

X取表单值到结构 从客户端获取所有传递的表单参数,并将它们转换为给定的结构体对象。需要注意的是,参数 `pointer` 是指向结构体对象的指针。可选参数 `mapping` 用于指定键到属性的映射。 md5:36ac7f24ad6e766e

func (*Request) X取请求体到json类

func (r *Request) X取请求体到json类() (*gjson.Json, error)

X取请求体到json类 将当前请求内容解析为JSON格式,并返回JSON对象。 注意,请求内容是从请求体(BODY)中读取的,而不是从表单的任何字段中读取。 md5:166af4b89b6a5a68

func (*Request) X取请求体字节集

func (r *Request) X取请求体字节集() []byte

X取请求体字节集 读取并返回请求体内容为字节。 可以多次调用,每次都返回相同的正文内容。 md5:be66d2484fd786ca

func (*Request) X取请求体文本

func (r *Request) X取请求体文本() string

X取请求体文本 用于检索并返回请求体内容作为字符串。可以多次调用以获取相同的内容。 md5:503c28317dc909ca

func (*Request) X取路由器Map副本

func (r *Request) X取路由器Map副本() map[string]string

X取路由器Map副本 获取并返回路由器映射的副本。 md5:c47609cda93e62b3

func (*Request) X取路由器值到泛型类

func (r *Request) X取路由器值到泛型类(名称 string, 默认值 ...interface{}) *gvar.Var

X取路由器值到泛型类 通过给定的键名 `key` 获取并返回路由器值。如果 `key` 不存在,它将返回 `def`。 md5:25ec580295596f49

func (*Request) X取路由解析对象

func (r *Request) X取路由解析对象() *X路由解析

X取路由解析对象 获取并返回用于处理此请求的用户定义的处理器。 md5:6aef7d779ee52097

func (*Request) X取远程IP地址

func (r *Request) X取远程IP地址() string

X取远程IP地址 从 RemoteAddr 中返回 IP 地址。 md5:fca642ffe8c25d8c

func (*Request) X取错误信息

func (r *Request) X取错误信息() error

X取错误信息 返回请求过程中发生的错误。如果没有错误,它将返回 nil。 md5:035e49a2662f9c04

func (*Request) X是否为AJAX请求

func (r *Request) X是否为AJAX请求() bool

X是否为AJAX请求 检查并返回当前请求是否为AJAX请求。 md5:c4e5c9eb4c13dae7

func (*Request) X是否为文件请求

func (r *Request) X是否为文件请求() bool

X是否为文件请求 检查并返回当前请求是否是为文件服务的。 md5:a849769abec62994

func (*Request) X是否已退出

func (r *Request) X是否已退出() bool

X是否已退出 检查并返回当前请求是否已退出。 md5:9198deaaaf14733a

func (*Request) X绑定模板变量

func (r *Request) X绑定模板变量(名称 string, 值 interface{})

X绑定模板变量 将模板变量绑定到当前请求。 md5:0a82d7a20f0d7265

func (*Request) X绑定模板变量Map

func (r *Request) X绑定模板变量Map(Map值 gview.Params)

X绑定模板变量Map 将多个模板变量绑定到当前请求。 md5:9676a02a50e91095

func (*Request) X解析URL到结构

func (r *Request) X解析URL到结构(结构指针 interface{}) error

X解析URL到结构 的行为类似于 Parse 函数,但只解析查询参数。 md5:4104abbe70053960

func (*Request) X解析参数到结构

func (r *Request) X解析参数到结构(结构指针 interface{}) error

X解析参数到结构 是最常用的函数,它将请求参数转换为结构体或结构体切片。同时,根据结构体上的验证标签,自动对结构体或结构体切片的每个元素进行验证。

参数 `pointer` 可以是以下类型之一:*struct/*struct/*[]struct/*[]*struct。

它支持单个和多个结构体的转换: 1. 单个结构体时,请求内容格式如:{"id":1, "name":"john"} 或 ?id=1&name=john 2. 多个结构体时,请求内容格式如:[{"id":1, "name":"john"}, {"id":, "name":"smith"}]

待办事项:通过减少跨包对同一变量的重复反射使用,来提升性能。 md5:ad971f0fee54e93d

func (*Request) X解析表单到结构

func (r *Request) X解析表单到结构(结构指针 interface{}) error

X解析表单到结构 类似于 Parse 函数,但只解析表单参数或主体内容。 md5:c384eb18ba068958

func (*Request) X设置上下文对象

func (r *Request) X设置上下文对象(上下文 context.Context)

X设置上下文对象 为当前请求设置自定义上下文。 md5:447efd465325d822

func (*Request) X设置上下文对象值

func (r *Request) X设置上下文对象值(名称 interface{}, 值 interface{})

X设置上下文对象值 为上下文(context)设置自定义参数,使用键值对形式。 md5:f6782a132f936ef1

func (*Request) X设置查询参数

func (r *Request) X设置查询参数(名称 string, 值 interface{})

X设置查询参数 使用键值对设置自定义查询值。 md5:464e6b634ef97c90

func (*Request) X设置模板对象

func (r *Request) X设置模板对象(模板对象 *gview.View)

X设置模板对象 为当前请求设置模板视图引擎对象。 md5:ec41ed91daaf7bd3

func (*Request) X设置自定义参数

func (r *Request) X设置自定义参数(名称 string, 值 interface{})

X设置自定义参数 设置自定义参数,使用键值对形式。 md5:d3e3851975cc7c6e

func (*Request) X设置自定义参数Map

func (r *Request) X设置自定义参数Map(参数 map[string]interface{})

X设置自定义参数Map 设置自定义参数,通过键值对映射。 md5:f6685d3faaf3bb78

func (*Request) X设置表单值

func (r *Request) X设置表单值(名称 string, 值 interface{})

X设置表单值 使用键值对设置自定义表单值。 md5:eca1a8c094c9ff19

func (*Request) X设置错误信息

func (r *Request) X设置错误信息(错误 error)

X设置错误信息 为当前请求设置自定义错误。 md5:025f3a0817a4be99

func (*Request) X账号密码认证

func (r *Request) X账号密码认证(账号, 密码 string, 可选提示 ...string) bool

X账号密码认证 启用HTTP基本认证功能,使用给定的凭证(passport)和密码,并要求客户端进行身份验证。如果认证成功,返回true;否则,如果认证失败,返回false。 md5:8ea275597053f51d

func (*Request) X退出Hook

func (r *Request) X退出Hook()

X退出Hook 退出当前及后续HTTP钩子处理器的执行。 md5:ef92857b0e046888

func (*Request) X退出全部

func (r *Request) X退出全部()

X退出全部 退出当前及后续的HTTP处理器执行。 md5:53932e5e1bdd10d5

func (*Request) X退出当前

func (r *Request) X退出当前()

X退出当前 退出当前HTTP处理器的执行。 md5:3a3298adda39cc74

func (*Request) X重载请求参数

func (r *Request) X重载请求参数()

X重载请求参数 用于修改请求参数。 有时,我们希望通过中间件来修改请求参数,但直接修改 Request.Body 是无效的, 因此它会清除 Request 的已解析标记,使得参数能够被重新解析。 md5:af7ff26c797683ef

type Response

type Response struct {
	*response.BufferWriter          // 基础的 ResponseWriter。 md5:edecebd8a0d4cf02
	Server                 *X服务     // Parent server.
	Request                *Request // According request.
}

Response 是HTTP响应管理器。 注意它实现了带有缓冲功能的http.ResponseWriter接口。 md5:897398e62eaf56fc

func (*Response) ServeContent

func (r *Response) ServeContent(name string, modTime time.Time, content io.ReadSeeker)

ServeContent 使用提供的 ReadSeeker 中的内容回复请求。ServeContent 相较于 io.Copy 的主要优点是它能正确处理范围请求,设置 MIME 类型,并处理 If-Match, If-Unmodified-Since, If-None-Match, If-Modified-Since 和 If-Range 请求。

参考 http.ServeContent md5:935db9add8e4232c

func (*Response) X下载文件

func (r *Response) X下载文件(路径 string, 文件名 ...string)

X下载文件 用于将文件下载服务响应到请求。 md5:b5e9e8b76f0afca0

func (*Response) X写响应缓冲区

func (r *Response) X写响应缓冲区(内容 ...interface{})

X写响应缓冲区 将 `content` 写入响应缓冲区。 md5:2f656734fbf8eab6

func (*Response) X写响应缓冲区JSON

func (r *Response) X写响应缓冲区JSON(内容 interface{})

X写响应缓冲区JSON 将`content`以JSON格式写入到响应中。 md5:0ca8d5da1805456f

func (*Response) X写响应缓冲区JSONP

func (r *Response) X写响应缓冲区JSONP(内容 interface{})

X写响应缓冲区JSONP 将`content`按照JSONP格式写入响应。

注意,对于JSONP格式,请求中应该包含一个名为"callback"的参数。 md5:32a3e4fa6b4e92b0

func (*Response) X写响应缓冲区JSONP并退出

func (r *Response) X写响应缓冲区JSONP并退出(内容 interface{})

X写响应缓冲区JSONP并退出 将 `content` 以 JSONP 格式写入响应,并在成功时退出当前处理器的执行。"Exit" 功能常用于替代处理器中的返回语句,以提供便利。

请注意,为了使用 JSONP 格式,请求中应该包含一个 "callback" 参数。 md5:6c959e76945e075a

func (*Response) X写响应缓冲区JSON并退出

func (r *Response) X写响应缓冲区JSON并退出(内容 interface{})

X写响应缓冲区JSON并退出 将`content`以JSON格式写入响应,并在成功时退出当前处理器的执行。"Exit"功能常用于替代处理器中的返回语句,以提供便利。 md5:0714d99528fcb93e

func (*Response) X写响应缓冲区XML

func (r *Response) X写响应缓冲区XML(内容 interface{}, 根标记 ...string)

X写响应缓冲区XML 将`content`以XML格式写入响应。 md5:850a872cf25d6a70

func (*Response) X写响应缓冲区XML并退出

func (r *Response) X写响应缓冲区XML并退出(内容 interface{}, 根标记 ...string)

X写响应缓冲区XML并退出 将`content`以XML格式写入响应,并在成功时退出当前处理器的执行。 “退出”功能常用于便捷地替代处理器中return语句的使用。 md5:12a9a20328b00f55

func (*Response) X写响应缓冲区与HTTP状态码

func (r *Response) X写响应缓冲区与HTTP状态码(状态码 int, 内容 ...interface{})

X写响应缓冲区与HTTP状态码 将HTTP状态码`status`和内容`content`写入响应。 请注意,它不会在这里设置Content-Type头。 md5:8b7195f02ad8ced0

func (*Response) X写响应缓冲区与HTTP状态码并退出

func (r *Response) X写响应缓冲区与HTTP状态码并退出(状态码 int, 内容 ...interface{})

X写响应缓冲区与HTTP状态码并退出 将HTTP状态码`status`和内容`content`写入响应,并在成功时退出当前处理程序的执行。"Exit"特性通常用于方便地替代处理程序中返回语句的使用。 md5:2e5cbf96316a0c3c

func (*Response) X写响应缓冲区并换行

func (r *Response) X写响应缓冲区并换行(内容 ...interface{})

X写响应缓冲区并换行 使用`content`和换行符写入响应。 md5:574e18a271a92e20

func (*Response) X写响应缓冲区并格式化

func (r *Response) X写响应缓冲区并格式化(格式 string, 内容 ...interface{})

X写响应缓冲区并格式化 使用 fmt.Sprintf 格式化字符串并写出响应。 md5:15163b759bd146b8

func (*Response) X写响应缓冲区并格式化与换行

func (r *Response) X写响应缓冲区并格式化与换行(格式 string, 内容 ...interface{})

X写响应缓冲区并格式化与换行 使用 fmt.Sprintf 格式化输出并将结果作为响应写入,同时添加换行符。 md5:154e6f5f52878f00

func (*Response) X写响应缓冲区并退出

func (r *Response) X写响应缓冲区并退出(内容 ...interface{})

X写响应缓冲区并退出 将`content`写入响应缓冲区并退出当前处理器的执行。 "Exit"功能常用于替代处理器中的返回语句,以提供便利。 md5:afcb2dda1beb9358

func (*Response) X写响应缓冲区并退出与换行

func (r *Response) X写响应缓冲区并退出与换行(内容 ...interface{})

X写响应缓冲区并退出与换行 写入包含`content`和换行符的响应,然后退出当前处理器的执行。"Exit"特性通常用于方便地替换处理器中的返回语句。 md5:bb5f123bedaec380

func (*Response) X写响应缓冲区并退出与格式化

func (r *Response) X写响应缓冲区并退出与格式化(格式 string, 内容 ...interface{})

X写响应缓冲区并退出与格式化使用fmt.Sprintf格式化响应内容并退出当前处理器的执行。 "Exit"功能常用于替代处理器中的返回语句,以提供便利。 md5:01275db804fa4029

func (*Response) X写响应缓冲区并退出与格式化换行

func (r *Response) X写响应缓冲区并退出与格式化换行(格式 string, 内容 ...interface{})

X写响应缓冲区并退出与格式化换行使用fmt.Sprintf格式化响应并添加换行符,然后退出当前处理程序的执行。 "Exit"功能常用于替代处理器中的返回语句,以提供便利。 md5:ee5288e61cdea4b2

func (*Response) X写覆盖响应缓冲区

func (r *Response) X写覆盖响应缓冲区(内容 ...interface{})

X写覆盖响应缓冲区 将响应缓冲区用`content`重写。 md5:d68f13dc57329ab0

func (*Response) X写覆盖响应缓冲区并退出

func (r *Response) X写覆盖响应缓冲区并退出(内容 ...interface{})

X写覆盖响应缓冲区并退出 将响应缓冲区用 `content` 替换,然后退出当前处理程序的执行。"Exit" 功能通常用于方便地替换处理程序中的返回语句。 md5:968d387aea44eeab

func (*Response) X发送文件

func (r *Response) X发送文件(文件路径 string, 是否展示目录文件列表 ...bool)

X发送文件 向响应中发送文件。 md5:e5a83a4dd0cadaf6

func (*Response) X取跨域默认选项

func (r *Response) X取跨域默认选项() CORSOptions

X取跨域默认选项 返回默认的 CORS 选项,它允许任何跨域请求。 md5:ed45ce5e88088eac

func (*Response) X是否允许跨域

func (r *Response) X是否允许跨域(跨域选项 CORSOptions) bool

X是否允许跨域 CORSAllowed 检查当前请求的来源是否被允许进行跨域。 md5:599a140b617c5c1c

func (*Response) X解析文本模板

func (r *Response) X解析文本模板(文本模板 string, 模板变量 ...gview.Params) (string, error)

X解析文本模板 使用给定的模板参数`params`解析指定的模板文件`file`, 并返回解析后的模板内容。 md5:e91c27dd95553a3d

func (*Response) X解析模板文件

func (r *Response) X解析模板文件(模板文件路径 string, 模板变量 ...gview.Params) (string, error)

X解析模板文件 使用给定的模板文件 `tpl` 和模板变量 `params` 进行解析,然后返回解析后的模板内容。 md5:170f6327b48f33cd

func (*Response) X解析默认模板文件

func (r *Response) X解析默认模板文件(模板变量 ...gview.Params) (string, error)

X解析默认模板文件 使用参数解析默认模板文件。 md5:83eb637c4bdf2659

func (*Response) X跨域请求全允许

func (r *Response) X跨域请求全允许()

X跨域请求全允许 使用默认的 CORS 选项设置 CORS, 允许任何跨域请求。 md5:2808119e534c338a

func (*Response) X跨域请求设置

func (r *Response) X跨域请求设置(跨域选项 CORSOptions)

X跨域请求设置 设置自定义X跨域请求设置选项。 参见 https://www.w3.org/TR/cors/ 。 md5:5ace1c84086a260a

func (*Response) X输出到模板文件

func (r *Response) X输出到模板文件(模板文件路径 string, 模板变量 ...gview.Params) error

X输出到模板文件解析并响应给定的模板文件。参数`params`指定了解析时的模板变量。 md5:f7af01616060ef2a

func (*Response) X输出到默认模板文件

func (r *Response) X输出到默认模板文件(模板变量 ...gview.Params) error

X输出到默认模板文件 函数用于解析并响应默认的模板文件。 参数 `params` 用于指定解析模板时所需的变量。 md5:746b7bfd331d0eb8

func (*Response) X输出文本模板

func (r *Response) X输出文本模板(文本模板 string, 模板变量 ...gview.Params) error

X输出文本模板 解析并响应模板内容。 参数 `params` 用于指定模板解析时的变量。 md5:967e05a26da5c949

func (*Response) X输出缓存区

func (r *Response) X输出缓存区()

X输出缓存区 将缓冲区的内容输出到客户端并清空缓冲区。 md5:16e9c330d696be4e

func (*Response) X重定向

func (r *Response) X重定向(url地址 string, 重定向状态码 ...int)

X重定向 将客户端重定向到另一个位置。 可选参数 `code` 指定重定向的HTTP状态码,通常可以是301或302。默认为302。 md5:ba008c02151efa61

func (*Response) X重定向到来源页面

func (r *Response) X重定向到来源页面(重定向状态码 ...int)

X重定向到来源页面 将客户端重定向回引荐来源。 可选参数 `code` 指定了用于重定向的HTTP状态码, 常见的可选值有301或302,默认情况下使用302。 md5:b52d05fd1d742c11

type RouterItem

type RouterItem struct {
	Handler   *X路由处理函数 // The handler.
	X服务器名称    string   // Server name.
	X监听地址     string   // Listening address.
	Domain    string   // Bound domain.
	Type      X路由处理器类型 // Route handler type.
	X中间件名称    string   // Bound middleware.
	Method    string   // Handler method name.
	X路由URI    string   // Route URI.
	Priority  int      // Just for reference.
	X是否为服务处理器 bool     // Is service handler.
}

RouterItem 仅仅用于路由输出。 md5:50edede8ea2ffda9

type ServerConfig

type ServerConfig struct {

	// 服务名称,用于服务注册和发现。 md5:a0d782209905145d
	Name string `json:"name"`

	// Address 指定服务器监听的地址,如 "port" 或 ":port",多个地址使用 "," 分隔。
	// md5:ae0da0e5cf0a3e61
	Address string `json:"address"`

	// HTTPSAddr 指定了HTTPS地址,多个地址使用逗号','连接。 md5:c776678a9eac5a90
	HTTPSAddr string `json:"httpsAddr"`

	// Listeners 指定了自定义的监听器。 md5:3b866f27e7903dac
	Listeners []net.Listener `json:"listeners"`

	// 如果为空,Endpoints 是服务注册的自定义端点,它使用 Address。 md5:57f627d789f1ea89
	Endpoints []string `json:"endpoints"`

	// HTTPSCertPath 指定HTTPS服务的证书文件路径。 md5:3613bb98322987e7
	HTTPSCertPath string `json:"httpsCertPath"`

	// HTTPSKeyPath 指定了HTTPS服务的密钥文件路径。 md5:2a9c1b2c382d01b8
	HTTPSKeyPath string `json:"httpsKeyPath"`

	// TLSConfig 可选地提供一个用于 ServeTLS 和 ListenAndServeTLS 的 TLS 配置。请注意,此值会被 ServeTLS 和 ListenAndServeTLS 克隆,
	// 因此无法通过如 tls.Config.SetSessionTicketKeys 这样的方法修改配置。若要使用 SetSessionTicketKeys,应使用带有 TLS 监听器的 Server.Serve。
	// md5:16a9af3e2eb3eabc
	TLSConfig *tls.Config `json:"tlsConfig"`

	// 处理HTTP请求的处理器。 md5:bd278835c47f74d4
	Handler func(w http.ResponseWriter, r *http.Request) `json:"-"`

	// ReadTimeout是读取整个请求(包括正文)的最大持续时间。
	//
	// 由于ReadTimeout不允許Handler根据每个请求体的可接受截止日期或上传速率做出逐个请求的决定,大多数用户更喜欢使用ReadHeaderTimeout。同时使用它们两者也是可以的。
	// md5:45add6b4a3777e9a
	ReadTimeout time.Duration `json:"readTimeout"`

	// WriteTimeout 是响应写入操作超时的最长时间。每当读取新请求的头信息时,它都会重置。与 ReadTimeout 相似,它不允许处理程序针对每个请求做出超时时间的决定。
	// md5:7cba2c215a8e6f3d
	WriteTimeout time.Duration `json:"writeTimeout"`

	// IdleTimeout 是在保持连接开启状态下,等待下一个请求的最大时间。如果IdleTimeout为零,则使用ReadTimeout的值。如果两者都为零,则没有超时设置。
	// md5:340816400bd04176
	IdleTimeout time.Duration `json:"idleTimeout"`

	// MaxHeaderBytes 控制服务器解析请求头的键值对(包括请求行)时的最大字节数。它不限制请求体的大小。
	//
	// 可以在配置文件中通过字符串进行配置,例如:1m、10m、500kb等。默认值为 10240 字节。
	// md5:8a61cc04b245e3d0
	MaxHeaderBytes int `json:"maxHeaderBytes"`

	// EnableHTTPKeepAlive 启用 HTTP 保持活动。 md5:316ccd3dea9e6e4e
	KeepAlive bool `json:"keepAlive"`

	// ServerAgent 指定了服务器代理信息,该信息将被写入HTTP响应头中作为 "Server"。
	// md5:08ba94b701f34cac
	ServerAgent string `json:"serverAgent"`

	// View 指定了服务器的默认模板视图对象。 md5:1d7f3415e9af9116
	View *gview.View `json:"view"`

	// Rewrites 指定了URI重写规则映射。 md5:177b674dcc27b406
	Rewrites map[string]string `json:"rewrites"`

	// IndexFiles 指定了静态文件夹的索引文件。 md5:2beaa7ae62753536
	IndexFiles []string `json:"indexFiles"`

	// IndexFolder 指定是否在请求文件夹时列出子文件。
	// 如果为 false,服务器将返回 HTTP 状态码 403。
	// md5:2d0bfed1b08c9bae
	IndexFolder bool `json:"indexFolder"`

	// ServerRoot 指定静态服务的根目录。 md5:19d6dd74ec61bd29
	ServerRoot string `json:"serverRoot"`

	// SearchPaths 指定静态服务的额外搜索目录。 md5:bd172212e30738c5
	SearchPaths []string `json:"searchPaths"`

	// StaticPaths 指定了URI到目录的映射数组。 md5:ea14f728a07fbd14
	StaticPaths []staticPathItem `json:"staticPaths"`

	// FileServerEnabled 是静态服务的全局开关。
	// 如果设置了任何静态路径,它将自动设置为启用。
	// md5:c3edec83e9cfd01f
	FileServerEnabled bool `json:"fileServerEnabled"`

	// CookieMaxAge 指定 cookie 项的最大过期时间(TTL)。 md5:c6712f43beedeb7d
	CookieMaxAge time.Duration `json:"cookieMaxAge"`

	// CookiePath 指定了Cookie路径。
	// 它也影响了会话ID的默认存储位置。
	// md5:dad6b405aee54d41
	CookiePath string `json:"cookiePath"`

	// CookieDomain 指定Cookie的域名。
	// 它也会影响默认的session id存储位置。
	// md5:f2d433c3779a94df
	CookieDomain string `json:"cookieDomain"`

	// CookieSameSite 指定 cookie 的 SameSite 属性。它还影响会话 ID 的默认存储。
	// md5:bba3b21b29719a23
	CookieSameSite string `json:"cookieSameSite"`

	// CookieSameSite 指定 cookie 的 Secure 属性。
	// 它还会影响会话 ID 的默认存储。
	// md5:e861b293a54a4909
	CookieSecure bool `json:"cookieSecure"`

	// CookieSameSite 指定了cookie的HttpOnly属性。
	// 它也影响会话ID的默认存储方式。
	// md5:ffc9065ce43afdd9
	CookieHttpOnly bool `json:"cookieHttpOnly"`

	// SessionIdName 指定会话ID的名称。 md5:18c5a80d34f75272
	SessionIdName string `json:"sessionIdName"`

	// SessionMaxAge 指定会话项的最大超时时间(TTL)。 md5:cc78683f7c70c955
	SessionMaxAge time.Duration `json:"sessionMaxAge"`

	// SessionPath 指定了用于存储会话文件的会话存储目录路径。
	// 仅当会话存储类型为文件存储时,此设置才有意义。
	// md5:ace2dbc78e7f3a04
	SessionPath string `json:"sessionPath"`

	// SessionStorage 指定会话存储。 md5:678a55a9e339a25c
	SessionStorage gsession.Storage `json:"sessionStorage"`

	// SessionCookieMaxAge 指定会话ID的cookie过期时间。如果设置为0,表示它将随着浏览器会话一起过期。
	// md5:7b48b403d924198e
	SessionCookieMaxAge time.Duration `json:"sessionCookieMaxAge"`

	// SessionCookieOutput 指定是否自动将会话ID输出到cookie。 md5:040824f71a38e446
	SessionCookieOutput bool `json:"sessionCookieOutput"`

	Logger           *glog.Logger `json:"logger"`           // Logger 指定服务器使用的日志记录器。 md5:004b9e605f068eec
	LogPath          string       `json:"logPath"`          // LogPath 指定日志文件的存储目录。 md5:de94cd356ae22e8a
	LogLevel         string       `json:"logLevel"`         // LogLevel 指定了logger的日志级别。 md5:87d747e517ace64c
	LogStdout        bool         `json:"logStdout"`        // LogStdout 指定是否将日志内容打印到标准输出(stdout)。 md5:f591098f0447f3f8
	ErrorStack       bool         `json:"errorStack"`       // ErrorStack 指定在发生错误时是否记录堆栈信息。 md5:5cfe84f341788adc
	ErrorLogEnabled  bool         `json:"errorLogEnabled"`  // ErrorLogEnabled 启用将错误日志内容写入文件。 md5:9065ef46c6d983d0
	ErrorLogPattern  string       `json:"errorLogPattern"`  // ErrorLogPattern 指定错误日志文件模式,如:error-YYYYMMDD.log. md5:c59be38d6eeea7aa
	AccessLogEnabled bool         `json:"accessLogEnabled"` // AccessLogEnabled 启用将访问日志内容记录到文件中。 md5:6867f80f6ec7fb95
	AccessLogPattern string       `json:"accessLogPattern"` // AccessLogPattern 指定错误日志文件的模式,如:access-{Ymd}.log. md5:e01474de0152ebf6

	PProfEnabled bool   `json:"pprofEnabled"` // PProfEnabled 启用 PProf 功能。 md5:4847ea23da60be23
	PProfPattern string `json:"pprofPattern"` // PProfPattern 为路由器指定 PProf 服务的模式。 md5:ddf66608babb16a1

	OpenApiPath       string `json:"openapiPath"`       // OpenApiPath 指定OpenApi规范文件的路径。 md5:a99446ffbab82145
	SwaggerPath       string `json:"swaggerPath"`       // SwaggerPath 定义路由注册的Swagger UI路径。 md5:abc9988ac6d860c6
	SwaggerUITemplate string `json:"swaggerUITemplate"` // SwaggerUITemplate 指定 Swagger UI 的自定义模板. md5:0f381e185ab07c43

	// ClientMaxBodySize 指定了客户端请求的最大体大小限制(以字节为单位)。它可以在配置文件中通过字符串进行配置,例如:1m、10m、500kb 等。默认值为 `8MB`。
	// md5:2ae357b9e73e0ba6
	ClientMaxBodySize int64 `json:"clientMaxBodySize"`

	// FormParsingMemory 定义了用于解析多媒体表单的最大内存缓冲区大小(以字节为单位)。可以在配置文件中使用类似 "1m"、"10m"、"500kb" 等字符串进行配置。默认值为 1MB。
	// md5:e7808b8ee0d32ae1
	FormParsingMemory int64 `json:"formParsingMemory"`

	// NameToUriType 用于指定在注册路由时,将结构体方法名转换为URI的类型。
	// md5:3853020c5284d13d
	NameToUriType int `json:"nameToUriType"`

	// RouteOverWrite 允许覆盖重复的路由。 md5:11e5811ec1ba25ca
	RouteOverWrite bool `json:"routeOverWrite"`

	// DumpRouterMap 指定服务器启动时是否自动dump路由器映射。 md5:5c37a6000e9858ab
	DumpRouterMap bool `json:"dumpRouterMap"`

	// Graceful启用进程所有服务器的优雅重启功能。 md5:e4f67dc7d507232e
	Graceful bool `json:"graceful"`

	// GracefulTimeout 设置父进程的最大生存时间(秒)。 md5:09d4293175059ede
	GracefulTimeout uint8 `json:"gracefulTimeout"`

	// GracefulShutdownTimeout 设置在停止服务器之前,允许服务器最大存活的时间(秒数)。 md5:b220917a3a4e4ebf
	GracefulShutdownTimeout uint8 `json:"gracefulShutdownTimeout"`
}

ServerConfig 是HTTP服务器的配置管理器。 备注: 此配置结构不做名称翻译, 单元测试内的SetConfigWithMap()方法, 会直接将文本名称转换成配置项名称, 导致找不到原名的配置项. (2024-07-21) ServerConfig 是HTTP服务器的配置管理器。 备注: 此配置结构不做名称翻译, 单元测试内的SetConfigWithMap()方法, 会直接将文本名称转换成配置项名称, 导致找不到原名的配置项. (2024-07-21) ServerConfig 是HTTP服务器的配置管理器。 备注: 此配置结构不做名称翻译, 单元测试内的SetConfigWithMap()方法, 会直接将文本名称转换成配置项名称, 导致找不到原名的配置项. (2024-07-21) ServerConfig 是HTTP服务器的配置管理器。 备注: 此配置结构不做名称翻译, 单元测试内的SetConfigWithMap()方法, 会直接将文本名称转换成配置项名称, 导致找不到原名的配置项. (2024-07-21) ServerConfig 是HTTP服务器的配置管理器。 备注: 此配置结构不做名称翻译, 单元测试内的SetConfigWithMap()方法, 会直接将文本名称转换成配置项名称, 导致找不到原名的配置项. (2024-07-21) ServerConfig 是HTTP服务器的配置管理器。 备注: 此配置结构不做名称翻译, 单元测试内的SetConfigWithMap()方法, 会直接将文本名称转换成配置项名称, 导致找不到原名的配置项. (2024-07-21) ServerConfig 是HTTP服务器的配置管理器。 备注: 此配置结构不做名称翻译, 单元测试内的SetConfigWithMap()方法, 会直接将文本名称转换成配置项名称, 导致找不到原名的配置项. (2024-07-21) ServerConfig 是HTTP服务器的配置管理器。 备注: 此配置结构不做名称翻译, 单元测试内的SetConfigWithMap()方法, 会直接将文本名称转换成配置项名称, 导致找不到原名的配置项. (2024-07-21) md5:a2c6c214e9d64d54

func X创建配置对象Map

func X创建配置对象Map(配置 map[string]interface{}) (ServerConfig, error)

X创建配置对象Map根据给定的映射和默认配置对象,创建并返回一个ServerConfig对象。 md5:4e735da260d3d596

func X创建默认配置项

func X创建默认配置项() ServerConfig

X创建默认配置项 创建并返回一个带有默认配置的ServerConfig对象。 注意,不要将这些默认配置定义为本地包变量,因为存在一些指针属性可能在不同的服务器中被共享。 md5:3a8bce955120579e

type Session

type Session = gsession.Session

Session 实际上是 gsession.Session 的别名,它绑定到一个单独的请求。 md5:669895d1042f4c49

type UploadFile

type UploadFile struct {
	*multipart.FileHeader `json:"-"`
	// contains filtered or unexported fields
}

UploadFile 包装了multipart上传文件,提供了更多和更方便的功能。 md5:a7173285d087c4aa

func (UploadFile) MarshalJSON

func (f UploadFile) MarshalJSON() ([]byte, error)

MarshalJSON 实现了接口 MarshalJSON 以供 json.Marshal 使用。 md5:43c3b36e60a18f9a

func (*UploadFile) X保存

func (f *UploadFile) X保存(目录路径 string, 随机重命名 ...bool) (文件名 string, 错误 error)

X保存 将单个上传的文件保存到指定的目录路径,并返回保存的文件名。

参数 `dirPath` 应为一个目录路径,否则会返回错误。

注意:如果目标位置已经存在同名文件,该函数将覆盖原有的文件。 md5:ffe3d8f90d14185a

type UploadFiles

type UploadFiles []*UploadFile

UploadFiles 是 *UploadFile 的数组类型。 md5:94b6aef81609f12b

func (UploadFiles) X保存

func (fs UploadFiles) X保存(目录路径 string, 随机重命名 ...bool) (文件名数组 []string, 错误 error)

X保存 将所有上传的文件保存到指定的目录路径,并返回保存的文件名。

参数 `dirPath` 应该是一个目录路径,否则会返回错误。

参数 `randomlyRename` 指定是否为所有文件名随机重命名。 md5:de2b45ea5a89ccad

type WebSocket

type WebSocket struct {
	*websocket.Conn
}

WebSocket 包装了底层的websocket连接,并提供了方便的函数。

警告:将来将被移除,请改用第三方websocket库。 md5:85d39ed9e94efa8d

type X分组路由

type X分组路由 struct {
	// contains filtered or unexported fields
}

X分组路由 是一个包裹多个路由和中间件的分组。 md5:609e7eb75d8a51f0

func (*X分组路由) X创建分组路由

func (g *X分组路由) X创建分组路由(分组前缀 string, 分组函数 ...func(分组路由 *X分组路由)) *X分组路由

X创建分组路由 创建并返回当前路由器组的一个子组。 md5:9706484677759d8f

func (*X分组路由) X取副本

func (g *X分组路由) X取副本() *X分组路由

X取副本 返回一个新的路由组,它是当前组的克隆。 md5:a3328662d1da7f5f

func (*X分组路由) X绑定

func (g *X分组路由) X绑定(处理对象 ...interface{}) *X分组路由

X绑定 为路由器组提供了批量路由注册的功能。 md5:16fbec330e17cafe

func (*X分组路由) X绑定CONNECT

func (g *X分组路由) X绑定CONNECT(路由规则 string, 处理函数 interface{}, 额外参数 ...interface{}) *X分组路由

X绑定CONNECT 注册一个 http 处理器,用于指定路由模式和方法:X绑定CONNECT。 md5:01352b24b5b15d84

func (*X分组路由) X绑定DELETE

func (g *X分组路由) X绑定DELETE(路由规则 string, 处理函数 interface{}, 额外参数 ...interface{}) *X分组路由

X绑定DELETE 注册一个 http 处理器,用于给路由模式(pattern)和 http 方法:X绑定DELETE。 md5:b493fe2a753e0422

func (*X分组路由) X绑定GET

func (g *X分组路由) X绑定GET(路由规则 string, 处理函数 interface{}, 额外参数 ...interface{}) *X分组路由

X绑定GET 函数用于注册一个HTTP处理程序,该程序根据给定的路由模式和HTTP方法(X绑定GET)进行处理。 md5:28790c458e1b962d

func (*X分组路由) X绑定HEAD

func (g *X分组路由) X绑定HEAD(路由规则 string, 处理函数 interface{}, 额外参数 ...interface{}) *X分组路由

X绑定HEAD 注册一个http处理器,用于指定路由模式和HTTP方法:X绑定HEAD。 md5:c1e170eaa1fe60b7

func (*X分组路由) X绑定Hook

func (g *X分组路由) X绑定Hook(路由规则 string, 触发时机 Hook名称, 处理函数 HandlerFunc) *X分组路由

X绑定Hook 注册一个钩子到给定的路由模式。 md5:1b98e351ffc870a2

func (*X分组路由) X绑定Map

func (g *X分组路由) X绑定Map(m map[string]interface{})

X绑定Map使用映射注册HTTP方法的处理器。 md5:234d05d7bb247514

func (*X分组路由) X绑定OPTIONS

func (g *X分组路由) X绑定OPTIONS(路由规则 string, 处理函数 interface{}, 额外参数 ...interface{}) *X分组路由

X绑定OPTIONS 注册一个 http 处理器,用于指定路由模式和方法:X绑定OPTIONS。 md5:7c22cd8904d32b99

func (*X分组路由) X绑定PATCH

func (g *X分组路由) X绑定PATCH(路由规则 string, 处理函数 interface{}, 额外参数 ...interface{}) *X分组路由

X绑定PATCH 注册一个HTTP处理器,给定路由模式和HTTP方法:X绑定PATCH。 md5:6662f45a2e57a836

func (*X分组路由) X绑定POST

func (g *X分组路由) X绑定POST(路由规则 string, 处理函数 interface{}, 额外参数 ...interface{}) *X分组路由

X绑定POST 注册一个http处理器,用于给路由模式和HTTP方法:X绑定POST。 md5:a251027c1c7a1d8c

func (*X分组路由) X绑定PUT

func (g *X分组路由) X绑定PUT(路由规则 string, 处理函数 interface{}, 额外参数 ...interface{}) *X分组路由

X绑定PUT 注册一个 HTTP 处理器,用于处理给定的路由模式和 HTTP 方法:X绑定PUT。 md5:28ecbdff64685060

func (*X分组路由) X绑定RESTfulAPI对象

func (g *X分组路由) X绑定RESTfulAPI对象(路由规则 string, 处理对象 interface{}) *X分组路由

X绑定RESTfulAPI对象 根据 X绑定RESTfulAPI对象 规则注册一个 HTTP 处理器,以提供路由模式。 md5:b89313386e2f52de

func (*X分组路由) X绑定TRACE

func (g *X分组路由) X绑定TRACE(路由规则 string, 处理函数 interface{}, 额外参数 ...interface{}) *X分组路由

X绑定TRACE 注册一个HTTP处理程序,用于提供路由模式和HTTP方法:X绑定TRACE。 md5:530929842b31c7fa

func (*X分组路由) X绑定中间件

func (g *X分组路由) X绑定中间件(处理函数 ...HandlerFunc) *X分组路由

X绑定中间件 将一个或多个中间件绑定到路由器组。 md5:ba25a44638f73d20

func (*X分组路由) X绑定所有类型

func (g *X分组路由) X绑定所有类型(路由规则 string, 处理函数 interface{}, 额外参数 ...interface{}) *X分组路由

X绑定所有类型 注册一个http处理器,用于处理给定路由模式的所有HTTP方法。 md5:06f3f9b3c30b17f0

func (*X分组路由) X绑定所有类型Map

func (g *X分组路由) X绑定所有类型Map(m map[string]interface{})

X绑定所有类型Map 使用映射注册HTTP处理程序,针对HTTP方法。 md5:4baef0383348c469

type X服务

type X服务 struct {
	// contains filtered or unexported fields
}

X服务 包装了 http.X服务 并提供了更多丰富的功能。 md5:0f435fc6994521cc

func X取服务对象

func X取服务对象(名称 ...interface{}) *X服务

X取服务对象 使用给定名称和默认配置创建并返回一个服务器实例。 注意,参数 `name` 应该在不同的服务器中是唯一的。如果给定的 `name` 已经存在于服务器映射中,它将返回现有的服务器实例。 md5:ad04664fa9750188

func (*X服务) Logger别名

func (s *X服务) Logger别名() *glog.Logger

Logger别名 是 GetLogger 的别名。 md5:56065d1ce5cca4c9

func (*X服务) PProf开启

func (s *X服务) PProf开启(路由地址 ...string)

PProf开启 启用服务器的PProf功能。 md5:5603a60f147574d1

func (*X服务) ServeHTTP

func (s *X服务) ServeHTTP(w http.ResponseWriter, r *http.Request)

ServeHTTP 是 http 请求的默认处理器。 它不应该为处理请求创建新的goroutine,因为http.Server已经为此创建了一个新的goroutine。

这个函数还实现了http.Handler接口。 md5:82dd5f4475c291db

func (*X服务) SetDumpRouterMap

func (s *X服务) SetDumpRouterMap(enabled bool)

SetDumpRouterMap 为服务器设置DumpRouterMap。如果启用了DumpRouterMap,服务器启动时会自动dump路由映射。 md5:1570556de016c76c

func (*X服务) SetEndpoints

func (s *X服务) SetEndpoints(endpoints []string)

SetEndpoints 设置服务器的端点。 md5:b75987e400904902

func (*X服务) SetNameToUriType

func (s *X服务) SetNameToUriType(t int)

SetNameToUriType 为服务器设置NameToUriType。 md5:aa74886d065469f2

func (*X服务) SetSwaggerUITemplate

func (s *X服务) SetSwaggerUITemplate(swaggerUITemplate string)

SetSwaggerUITemplate 设置服务器的Swagger模板。 md5:c49e80113f25e335

func (*X服务) Use别名

func (s *X服务) Use别名(处理函数 ...HandlerFunc)

Use别名 是 BindMiddlewareDefault 的别名。 参见 BindMiddlewareDefault。 md5:713ca39a398552e8

func (*X服务) X关闭当前服务

func (s *X服务) X关闭当前服务() error

X关闭当前服务 关闭当前服务器。 md5:b58984e69184996f

func (*X服务) X创建分组路由

func (s *X服务) X创建分组路由(分组前缀 string, 分组函数 ...func(分组路由 *X分组路由)) *X分组路由

X创建分组路由 创建并返回一个 RouterGroup 对象。 md5:ab811975f9ba0334

func (*X服务) X创建域名路由

func (s *X服务) X创建域名路由(域名 string) *Domain

X创建域名路由 为一个或多个域创建并返回用于管理的域对象。 md5:613c2d9b16e14c56

func (*X服务) X取CookieHttpOnly

func (s *X服务) X取CookieHttpOnly() bool

func (*X服务) X取CookieSameSite

func (s *X服务) X取CookieSameSite() http.SameSite

X取CookieSameSite 返回服务器的CookieSameSite设置。 md5:e015f6293556b8a8

func (*X服务) X取Cookie域名

func (s *X服务) X取Cookie域名() string

X取Cookie域名 返回服务器的Cookie域名。 md5:f44dbe67d6622660

func (*X服务) X取Cookie安全

func (s *X服务) X取Cookie安全() bool

func (*X服务) X取Cookie最大存活时长

func (s *X服务) X取Cookie最大存活时长() time.Duration

X取Cookie最大存活时长 返回服务器的 CookieMaxAge。 md5:515f434ef606a7c5

func (*X服务) X取Cookie路径

func (s *X服务) X取Cookie路径() string

X取Cookie路径 返回服务器的CookiePath。 md5:5879f664e379d096

func (*X服务) X取OpenApi对象

func (s *X服务) X取OpenApi对象() *goai.OpenApiV3

X取OpenApi对象 返回当前服务器的 OpenAPI 规范管理对象。 md5:8926983c83bc678d

func (*X服务) X取SessionCookie存活时长

func (s *X服务) X取SessionCookie存活时长() time.Duration

X取SessionCookie存活时长 返回服务器的 SessionCookieMaxAge。 md5:37a1e72edd958c1f

func (*X服务) X取SessionID名称

func (s *X服务) X取SessionID名称() string

X取SessionID名称 返回服务器的SessionIdName。 md5:b0dffea716eef695

func (*X服务) X取Session最大存活时长

func (s *X服务) X取Session最大存活时长() time.Duration

X取Session最大存活时长 返回服务器的会话最大存活时间。 md5:3019bd154cdbe978

func (*X服务) X取已监听地址

func (s *X服务) X取已监听地址() string

X取已监听地址 获取并返回当前服务器所监听的地址字符串。 md5:51d352ffec9dc329

func (*X服务) X取已监听端口

func (s *X服务) X取已监听端口() int

X取已监听端口 获取并返回当前服务器正在监听的其中一个端口。 md5:7e75c1b2c91e6f3e

func (*X服务) X取所有监听已端口

func (s *X服务) X取所有监听已端口() []int

X取所有监听已端口 获取并返回当前服务器监听的端口。 md5:98a46fc6cbcd9703

func (*X服务) X取日志存储目录

func (s *X服务) X取日志存储目录() string

X取日志存储目录 返回日志路径。 md5:0fe087f2f9b0a123

func (*X服务) X取服务名称

func (s *X服务) X取服务名称() string

X取服务名称 返回服务器的名称。 md5:1662443760c53efe

func (*X服务) X取服务状态

func (s *X服务) X取服务状态() X服务状态

X取服务状态 获取并返回服务器状态。 md5:2f87146be638ddb6

func (*X服务) X取注册发现对象

func (s *X服务) X取注册发现对象() gsvc.Registrar

X取注册发现对象 返回服务器的注册商。 md5:d5a67dbd4e6ac976

func (*X服务) X取请求处理器

func (s *X服务) X取请求处理器() func(w http.ResponseWriter, r *http.Request)

X取请求处理器 返回服务器的请求处理程序。 md5:97d22a3db48dd77d

func (*X服务) X取路由数组

func (s *X服务) X取路由数组() []RouterItem

X取路由数组 获取并返回路由器数组。 md5:4fe4fe015c1fb8e8

func (*X服务) X取静态文件索引

func (s *X服务) X取静态文件索引() []string

X取静态文件索引 从服务器检索并返回索引文件。 md5:4a8b46856576d1ee

func (*X服务) X启动服务

func (s *X服务) X启动服务()

X启动服务 以阻塞方式启动服务器监听。 它通常用于单服务器场景。 md5:4035b4359934ad62

func (*X服务) X启用HTTPS

func (s *X服务) X启用HTTPS(证书路径, 密钥路径 string, tls配置 ...*tls.Config)

X启用HTTPS 为服务器启用HTTPS,使用给定的证书和密钥文件。可选参数`tlsConfig`用于指定自定义TLS配置。 md5:0e566bf091aacfd8

func (*X服务) X平滑重启服务开启

func (s *X服务) X平滑重启服务开启(管理页URI ...string)

X平滑重启服务开启 为进程启用管理功能。 可选参数 `pattern` 指定了管理页面的 URI。 md5:edecba6f65e585e5

func (*X服务) X开始监听

func (s *X服务) X开始监听() error

X开始监听 开始在配置的端口上监听。 此函数不会阻塞进程,你可以使用 Wait 函数来阻塞进程。 md5:05c1c66553fa4a61

func (*X服务) X插件添加

func (s *X服务) X插件添加(插件 ...Plugin)

X插件添加 向服务器添加插件。 md5:381028a4fb84b7ca

func (*X服务) X日志访客记录是否已开启

func (s *X服务) X日志访客记录是否已开启() bool

X日志访客记录是否已开启 检查访问日志是否已启用。 md5:b076cc230602118d

func (*X服务) X日志错误记录是否已开启

func (s *X服务) X日志错误记录是否已开启() bool

X日志错误记录是否已开启 检查错误日志是否启用。 md5:2231c72f34764e99

func (*X服务) X绑定

func (s *X服务) X绑定(路由规则 string, 处理函数 interface{})

X绑定 将一个处理器函数注册到服务器,使用给定的模式。

注意,参数 `handler` 可以是以下两种类型之一: 1. func(*ghttp.Request) 2. func(context.Context, BizRequest) (BizResponse, error) md5:245b5139c4d933ad

func (*X服务) X绑定Hook

func (s *X服务) X绑定Hook(路由规则 string, 触发时机 Hook名称, 处理函数 HandlerFunc)

X绑定Hook 为指定的钩子注册处理程序。 md5:325d65ceb75f1b33

func (*X服务) X绑定HookMap

func (s *X服务) X绑定HookMap(路由规则 string, HookMap map[Hook名称]HandlerFunc)

X绑定HookMap 为指定的钩子注册处理器。 md5:38d4b79317ac1b3f

func (*X服务) X绑定RESTfulAPI对象

func (s *X服务) X绑定RESTfulAPI对象(路由规则 string, 处理对象 interface{})

X绑定RESTfulAPI对象 使用指定的模式将对象以REST API风格注册到服务器。 md5:e071850c88eb6751

func (*X服务) X绑定全局中间件

func (s *X服务) X绑定全局中间件(路由规则 string, 处理函数 ...HandlerFunc)

X绑定全局中间件 会在服务器上注册一个或多个全局中间件。全局中间件可以在没有服务处理器的情况下单独使用,它会在服务处理器之前或之后拦截所有动态请求。参数 `pattern` 指定了中间件拦截的路由模式,通常是一个模糊模式,如 "/:name"、"/*any" 或 "/{field}"。 md5:a58488c3f3613ab4

func (*X服务) X绑定全局默认中间件

func (s *X服务) X绑定全局默认中间件(处理函数 ...HandlerFunc)

X绑定全局默认中间件 使用默认模式 "/*" 向服务器注册一个或多个全局中间件。 全局中间件可以独立使用,无需服务处理器,它能在所有动态请求的前后拦截处理。 md5:fc212697fcedf39e

func (*X服务) X绑定对象

func (s *X服务) X绑定对象(路由规则 string, 处理对象 interface{}, 方法名 ...string)

X绑定对象 将对象绑定到具有给定模式的服务器路由。

可选参数 `method` 用于指定要注册的方法,支持多个方法名称;多个方法名称之间用字符 `,` 分隔,区分大小写。 md5:224eaf0adfd81c84

func (*X服务) X绑定对象方法

func (s *X服务) X绑定对象方法(路由规则 string, 处理对象 interface{}, 方法 string)

X绑定对象方法 将指定对象的特定方法与给定模式的服务器路由绑定。

可选参数 `method` 用于指定要注册的方法,它不支持多个方法名,仅支持一个,且区分大小写。 md5:badb3f7323abfd11

func (*X服务) X绑定状态码中间件

func (s *X服务) X绑定状态码中间件(状态码 int, 处理函数 HandlerFunc)

X绑定状态码中间件 为给定的状态码注册处理器。 md5:c94c3dd2e5b4197e

func (*X服务) X绑定状态码中间件Map

func (s *X服务) X绑定状态码中间件Map(中间件Map map[int]HandlerFunc)

X绑定状态码中间件Map 使用映射为给定的状态码注册处理器。 md5:a9ee1be3cd8089de

func (*X服务) X设置APIOpenApiUI路径

func (s *X服务) X设置APIOpenApiUI路径(路径 string)

X设置APIOpenApiUI路径 为服务器设置OpenApiPath。 md5:c6ced131768ea48a

func (*X服务) X设置APISwaggerUI路径

func (s *X服务) X设置APISwaggerUI路径(路径 string)

X设置APISwaggerUI路径 设置服务器的SwaggerPath。 md5:08e17ed1ebc823b0

func (*X服务) X设置Cookie域名

func (s *X服务) X设置Cookie域名(域名 string)

X设置Cookie域名 设置服务器的Cookie域。 md5:0337df246d313fe6

func (*X服务) X设置Cookie最大存活时长

func (s *X服务) X设置Cookie最大存活时长(时长 time.Duration)

X设置Cookie最大存活时长 设置服务器的CookieMaxAge。 md5:1bd691f49b3f7d7e

func (*X服务) X设置Cookie路径

func (s *X服务) X设置Cookie路径(路径 string)

X设置Cookie路径 为服务器设置Cookie路径。 md5:427faaa8ad8633d8

func (*X服务) X设置HTTPS监听地址

func (s *X服务) X设置HTTPS监听地址(地址 string)

X设置HTTPS监听地址 设置服务器的HTTPS监听端口。 md5:2cfcb725865474b8

func (*X服务) X设置HTTPS监听端口

func (s *X服务) X设置HTTPS监听端口(端口 ...int)

X设置HTTPS监听端口 设置服务器的HTTPS监听端口。 可以设置多个监听端口,如:X设置HTTPS监听端口(443, 500)。 md5:cdbfe394641fff8a

func (*X服务) X设置SessionCookie存活时长

func (s *X服务) X设置SessionCookie存活时长(最大时长 time.Duration)

X设置SessionCookie存活时长 为服务器设置 SessionCookieMaxAge。 md5:977671b06e3e5674

func (*X服务) X设置SessionID名称

func (s *X服务) X设置SessionID名称(名称 string)

X设置SessionID名称 为服务器设置 SessionIdName。 md5:d2b73f9cc3d5d247

func (*X服务) X设置SessionID输出到Cookie

func (s *X服务) X设置SessionID输出到Cookie(开启 bool)

X设置SessionID输出到Cookie 设置服务器的X设置SessionID输出到Cookie。 md5:a75d67eb511dd5ab

func (*X服务) X设置Session存储对象

func (s *X服务) X设置Session存储对象(Session存储对象 gsession.Storage)

X设置Session存储对象 为服务器设置SessionStorage。 md5:92b3b7fbc295084e

func (*X服务) X设置Session最大存活时长

func (s *X服务) X设置Session最大存活时长(时长 time.Duration)

X设置Session最大存活时长 用于设置服务器的会话最大存活时间。 md5:b9197f93d7981d91

func (*X服务) X设置TLS配置

func (s *X服务) X设置TLS配置(tls配置 *tls.Config)

X设置TLS配置 设置自定义的TLS配置,并为服务器启用HTTPS功能。 md5:e8fae606e7c9daa6

func (*X服务) X设置写入超时

func (s *X服务) X设置写入超时(时长 time.Duration)

X设置写入超时 设置服务器的写超时。 md5:60f9efbd1b42a85a

func (*X服务) X设置协议头最大长度

func (s *X服务) X设置协议头最大长度(最大长度 int)

X设置协议头最大长度 为服务器设置 MaxHeaderBytes。 md5:2e7198560eedacbb

func (*X服务) X设置客户端请求最大长度

func (s *X服务) X设置客户端请求最大长度(最大长度 int64)

X设置客户端请求最大长度 为服务器设置客户端最大请求体大小。 md5:5aa4d07a0684f2f7

func (*X服务) X设置开启长连接

func (s *X服务) X设置开启长连接(开启 bool)

X设置开启长连接 设置服务器的KeepAlive。 md5:54c342f49d9fa171

func (*X服务) X设置日志存储目录

func (s *X服务) X设置日志存储目录(目录 string) error

X设置日志存储目录 设置服务器的日志路径。 只有当设置了日志路径时,才会将内容写入文件。 md5:a5143c3c45534bef

func (*X服务) X设置日志开启记录等级

func (s *X服务) X设置日志开启记录等级(等级 string)

X设置日志开启记录等级 通过level字符串设置日志级别。 md5:c479bcdf03ab0fa2

func (*X服务) X设置日志开启访客记录

func (s *X服务) X设置日志开启访客记录(开启 bool)

X设置日志开启访客记录 用于启用或禁用访问日志。 md5:a353da90e0c3de0d

func (*X服务) X设置日志开启输出到CMD

func (s *X服务) X设置日志开启输出到CMD(开启 bool)

X设置日志开启输出到CMD 设置是否将日志内容输出到stdout。 md5:c93557220e40f70b

func (*X服务) X设置日志开启错误堆栈记录

func (s *X服务) X设置日志开启错误堆栈记录(开启 bool)

X设置日志开启错误堆栈记录 启用/禁用错误堆栈功能。 md5:6c411a957b96e186

func (*X服务) X设置日志开启错误记录

func (s *X服务) X设置日志开启错误记录(开启 bool)

X设置日志开启错误记录 开启或关闭错误日志。 md5:38a0655c0083b6d0

func (*X服务) X设置日志记录器

func (s *X服务) X设置日志记录器(日志记录器 *glog.Logger)

X设置日志记录器 用于设置负责日志记录的logger。 注意,由于可能存在并发安全问题,因此无法在运行时进行设置。 md5:560d266f79fb0915

func (*X服务) X设置服务名称

func (s *X服务) X设置服务名称(名称 string)

X设置服务名称 设置服务器的名称。 md5:242f311a4c185514

func (*X服务) X设置服务器代理标识

func (s *X服务) X设置服务器代理标识(代理标识 string)

X设置服务器代理标识 设置服务器的ServerAgent。 md5:ac1c65804355cc50

func (*X服务) X设置注册发现对象

func (s *X服务) X设置注册发现对象(注册发现对象 gsvc.Registrar)

X设置注册发现对象 设置服务器的注册器。 md5:59baf7cae4845598

func (*X服务) X设置监听地址

func (s *X服务) X设置监听地址(地址 string)

X设置监听地址 设置服务器的监听地址。 地址格式为 ':80','0.0.0.0:80','127.0.0.1:80','180.18.99.10:80' 等。 md5:c62ee3ae1a0d6764

func (*X服务) X设置监听端口

func (s *X服务) X设置监听端口(端口 ...int)

X设置监听端口 设置服务器的监听端口。 可以设置多个端口,例如:X设置监听端口(80, 8080)。 md5:e6fc730d6e8ee17c

func (*X服务) X设置自定义监听器

func (s *X服务) X设置自定义监听器(监听器 ...net.Listener) error

X设置自定义监听器 设置服务器的自定义监听器。 md5:5ce2e30da0c2811f

func (*X服务) X设置表单解析最大缓冲区长度

func (s *X服务) X设置表单解析最大缓冲区长度(最大长度 int64)

X设置表单解析最大缓冲区长度 设置服务器的表单解析内存大小。 md5:fad9dd48cd138769

func (*X服务) X设置请求处理器

func (s *X服务) X设置请求处理器(h func(w http.ResponseWriter, r *http.Request))

X设置请求处理器 设置服务器的请求处理器。 md5:c2ce7c70be19e1d5

func (*X服务) X设置读取超时

func (s *X服务) X设置读取超时(时长 time.Duration)

X设置读取超时 设置服务器的读取超时时间。 md5:731a0457ad074a1e

func (*X服务) X设置路由URI重写规则

func (s *X服务) X设置路由URI重写规则(URI string, 新URI string)

X设置路由URI重写规则 为服务器设置静态URI的重写规则。 md5:de7f1cfb68c0440c

func (*X服务) X设置路由URI重写规则Map

func (s *X服务) X设置路由URI重写规则Map(重写规则Map map[string]string)

X设置路由URI重写规则Map 设置服务器的重写映射。 md5:61d51060723e66b8

func (*X服务) X设置路由允许覆盖

func (s *X服务) X设置路由允许覆盖(开启 bool)

X设置路由允许覆盖 设置服务器的路由覆盖。 md5:613439182bb14ec2

func (*X服务) X设置配置项

func (s *X服务) X设置配置项(c ServerConfig) error

X设置配置项 为服务器设置配置。 md5:cf09327be418468a

func (*X服务) X设置配置项Map

func (s *X服务) X设置配置项Map(配置 map[string]interface{}) error

X设置配置项Map 使用映射(map)设置服务器的配置。 md5:896223070f4171c3

func (*X服务) X设置长连接超时

func (s *X服务) X设置长连接超时(时长 time.Duration)

X设置长连接超时 设置服务器的空闲超时时间。 md5:f18e89634fa33c02

func (*X服务) X设置静态文件是否列出子文件

func (s *X服务) X设置静态文件是否列出子文件(是否 bool)

X设置静态文件是否列出子文件 用于启用或禁用在请求目录时列出子文件的功能。 md5:68a17005c9c4e9c6

func (*X服务) X设置静态文件是否开启

func (s *X服务) X设置静态文件是否开启(开启 bool)

X设置静态文件是否开启 启用或禁用静态文件服务。 这是静态文件服务的主要开关。当调用如 SetServerRoot、AddSearchPath 和 AddStaticPath 等静态文件服务配置函数时,此配置会自动启用。 md5:62ef61e18a481245

func (*X服务) X设置静态文件根目录

func (s *X服务) X设置静态文件根目录(根目录 string)

X设置静态文件根目录 设置静态服务的文档根。 md5:a2b38f0b2614dd83

func (*X服务) X设置静态文件索引

func (s *X服务) X设置静态文件索引(索引 []string)

X设置静态文件索引 设置服务器的索引文件。 md5:9fa01b4418733cc9

func (*X服务) X设置默认模板对象

func (s *X服务) X设置默认模板对象(模板对象 *gview.View)

X设置默认模板对象 设置服务器的视图。 md5:ec7bba6db1e3a9cf

func (*X服务) X静态文件添加目录映射

func (s *X服务) X静态文件添加目录映射(旧路径 string, 新路径 string)

X静态文件添加目录映射 为静态文件服务设置URI到静态目录路径的映射。 md5:d4831b3f2ef706f4

func (*X服务) X静态文件添加额外搜索目录

func (s *X服务) X静态文件添加额外搜索目录(目录 string)

X静态文件添加额外搜索目录 为静态文件服务添加搜索目录路径。 md5:cd47be9ef3e2898b

type X服务状态

type X服务状态 = int

X服务状态 是服务器状态的枚举类型。 md5:6de5e4d7f5fc52a6

type X路由

type X路由 struct {
	Uri      string   // URI.
	Method   string   // HTTP method
	Domain   string   // Bound domain.
	X正则路由规则  string   // 用于路由匹配的解析正则表达式。 md5:8892e0f87233f591
	X路由参数名称  []string // 已解析的路由器参数名称。 md5:cb14202c5a1319f3
	Priority int      // Just for reference.
}

X路由 object.

type X路由处理函数

type X路由处理函数 struct {
	// 唯一的处理器项标识。
	// 注意,同一个处理器函数可能会注册为不同的处理器项,它们具有不同的处理器项ID。
	// md5:7b474802a6e17d79
	Id       int
	X处理器名称   string          // 处理器名称,当注册时会自动从运行时堆栈中获取。 md5:72fae2285a3c4c69
	Type     X路由处理器类型        // 处理器类型:对象/处理器/中间件/钩子。 md5:3f54f4463e6e5dc5
	X处理器函数信息 handlerFuncInfo // 处理器函数信息。 md5:471fa38cfb5ee901
	X初始化回调函数 HandlerFunc     // 当请求进入对象时的初始化函数(仅适用于对象注册类型)。 md5:e9c9e4d3f3d42414
	X关闭回调函数  HandlerFunc     // 当请求删除对象时(仅适用于对象注册类型),调用的退出函数。 md5:b919a3d55a43043b
	X中间件数组   []HandlerFunc   //绑定中间件数组。 md5:8fba709766af338f
	Hook名称   Hook名称          // 挂钩类型名称,仅对挂钩类型可用。 md5:13d0e45e1f8d3e9f
	X路由      *X路由            // Router object.
	X注册来源    string          // 注册源文件`路径:行号`。 md5:681405429ed39e78
}

X路由处理函数是注册的路由处理程序,包括中间件和钩子函数。 md5:78b676e6e09329bb

func (X路由处理函数) MarshalJSON

func (item X路由处理函数) MarshalJSON() ([]byte, error)

MarshalJSON 实现了接口 MarshalJSON 以供 json.Marshal 使用。 md5:43c3b36e60a18f9a

type X路由处理器类型

type X路由处理器类型 string

X路由处理器类型 是路由处理器枚举类型。 md5:940090bf597744cc

type X路由解析

type X路由解析 struct {
	Handler *X路由处理函数          // Handler information.
	X路由值    map[string]string // 从URL.Path中解析得到的路由值。 md5:f6d02a0cfbdeb7d3
}

X路由解析是从URL.Path解析出的项目。 md5:6e18c9d6fea2d3d1

func (X路由解析) MarshalJSON

func (item X路由解析) MarshalJSON() ([]byte, error)

MarshalJSON 实现了接口 MarshalJSON 以供 json.Marshal 使用。 md5:43c3b36e60a18f9a

Source Files

Directories

Path Synopsis
internal
response
包 response 提供了对 http 响应的包装器。
包 response 提供了对 http 响应的包装器。
swaggerui
Package swaggerui 提供了使用资源管理器打包的Swagger UI静态文件。
Package swaggerui 提供了使用资源管理器打包的Swagger UI静态文件。

Jump to

Keyboard shortcuts

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