Gin 框架:*gin.Engine 主要方法

gin.Engin

在 Gin 框架中,*gin.Engine 是整个 Web 应用的核心引擎 ,也是调用 gin.Default()gin.New() 时返回的实例。它不仅是路由组(RouterGroup) ,还集成了HTTP 服务启动、全局中间件管理、错误处理、静态文件服务、模板渲染等关键能力。

所有 Gin 应用的生命周期------从路由注册到服务启动------都围绕 gin.Engine 展开。理解它的主要方法,是掌握 Gin 高效开发的关键第一步。

复制代码
gin.Engine
├── RouterGroup (路由组,包含所有路由方法)
│   ├── GET/POST/PUT/DELETE 等路由方法
│   ├── Group() 路由分组
│   └── Use() 中间件
├── HTTP 服务功能
│   ├── Run() 启动服务器
│   └── RunTLS() HTTPS 服务
├── 中间件管理
│   └── Use() 添加全局中间件
└── 错误处理
    ├── NoRoute() 404 处理
    └── NoMethod() 405 处理

路由相关(继承自 RouterGroup):

go 复制代码
// HTTP 方法

GET(path string, handlers ...HandlerFunc) IRoutes

POST(path string, handlers ...HandlerFunc) IRoutes

PUT(path string, handlers ...HandlerFunc) IRoutes

DELETE(path string, handlers ...HandlerFunc) IRoutes

PATCH(path string, handlers ...HandlerFunc) IRoutes

HEAD(path string, handlers ...HandlerFunc) IRoutes

OPTIONS(path string, handlers ...HandlerFunc) IRoutes

ANY(path string, handlers ...HandlerFunc) IRoutes

中间件和分组(继承自 RouterGroup):

go 复制代码
Use(middleware ...HandlerFunc) IRoutes

Group(component string, handlers ...HandlerFunc) *RouterGroup

静态文件(继承自 RouterGroup):

go 复制代码
StaticFile(relativePath, filepath string) IRoutes

Static(relativePath, root string) IRoutes

StaticFS(relativePath string, fs http.FileSystem) IRoutes

其他方法

go 复制代码
Run(addr ...string) error

RunTLS(addr, certFile, keyFile string) error

RunUnix(file string) error

RunListener(listener net.Listener) error

  

NoRoute(handlers ...HandlerFunc)

NoMethod(handlers ...HandlerFunc)

  

LoadHTMLGlob(pattern string)

LoadHTMLFiles(files ...string)

SetHTMLTemplate(templ *template.Template)

SetFuncMap(funcMap template.FuncMap)

  

Routes() (routes RoutesInfo)

HandleMethodNotAllowed bool
相关推荐
迷迭香与樱花3 小时前
Gin 框架
go·gin
好好研究3 小时前
总结SSM设置欢迎页的方式
xml·java·后端·mvc
小马爱打代码3 小时前
Spring Boot:第三方 API 调用的企业级容错设计
java·spring boot·后端
csdn2015_4 小时前
springboot task
java·spring boot·后端
czlczl200209255 小时前
Spring Boot :如何高性能地在 Filter 中获取响应体(Response Body)
java·spring boot·后端
码界奇点5 小时前
基于Spring Boot和Vue3的无头内容管理系统设计与实现
java·spring boot·后端·vue·毕业设计·源代码管理
To Be Clean Coder6 小时前
【Spring源码】createBean如何寻找构造器(二)——单参数构造器的场景
java·后端·spring
你才是臭弟弟6 小时前
SpringBoot 集成MinIo(根据上传文件.后缀自动归类)
java·spring boot·后端
C澒7 小时前
面单打印服务的监控检查事项
前端·后端·安全·运维开发·交通物流
鸣潮强于原神7 小时前
TSMC chip_boundary宽度规则解析
后端