gin-web开发
1 gin介绍
go get -u github.com/gin-gonic/gin2 创建一个简单的服务
package main
// 导入gin包
import "github.com/gin-gonic/gin"
// 入口函数
func main() {
// 初始化一个http服务对象
// 默认使用Logger and Recovery中间件
r := gin.Default()
// 设置一个get请求的路由,url为/ping, 处理函数(或者叫控制器函数)是一个闭包函数。
r.GET("/ping", func(c *gin.Context) {
// 通过请求上下文对象Context, 直接往客户端返回一个json
// type H map[string]any
c.JSON(200, gin.H{
"message": "pong",
})
})
// 不写具体address默认在0.0.0.0:8080启动
r.Run(":8080") // 监听并在 0.0.0.0:8080 上启动服务
}3 设置图标
4 创建路由
4.1 路由匹配规则
路由类型
语法示例
匹配的示例路径
说明
5 参数渲染
6 获取请求参数
7 数据绑定
标签类型
绑定位置
常见场景
示例请求
7.1 数据验证
7.2 自定义验证器
7.3 beego验证器
8 文件上传
9 响应数据类型
10 路由组
11 中间件
11.1 自定义中间件
11.2 Next和Abort
11.3 利用Next计算请求时间
11.4 中间件作用域
11.5 gin.BasicAuth()中间件
11.6 WrapH和WrapF
12 模板语法
12.1 上下文
12.2 去除空格
12.3 支持go语言的符号
12.4 定义变量
12.5 pipline
12.6 流程控制-if
12.7 循环range
12.8 with
12.9 template
12.10 模板函数
格 式
描 述
12.10.1 自定义模板函数
13 日志
13.1 基于gin的日志中间件
13.2 logrus
14 cookie和session
14.1 使用Session和Cookie
最后更新于