Golang Gin框架入门_Golang Gin怎么快速构建RESTful API

用 Gin 构建 RESTful API 核心三步:初始化路由、定义 HTTP 方法和路径、绑定处理函数;它轻量高性能,适合中小项目快速上线。

用 Gin 构建 RESTful API 很快,核心就三步:初始化路由、定义 HTTP 方法和路径、绑定处理函数。它轻量、高性能,适合中小项目快速上线。

初始化 Gin 项目并启动服务

先安装 Gin:go get -u github.com/gin-gonic/gin。新建 main.go,写最简服务:

  • 调用 gin.Default() 获取带日志和恢复中间件的路由器
  • .Run(":8080") 启动,端口可自定义
  • 默认开启调试模式(控制台输出彩色日志),部署时设环境变量 GIN_MODE=release

定义 RESTful 路由与处理函数

Gin 支持标准 HTTP 方法映射,路径参数和查询参数提取非常直观:

  • 路径参数用冒号声明,如 GET /users/:idc.Param("id") 获取
  • 查询参数如 /users?page=1&size=10c.Query("page")c.DefaultQuery("page", "1")
  • JSON 请求体用 c.ShouldBindJSON(&struct) 自动解析,字段需加 JSON tag

返回标准 JSON 响应

Gin 提供了简洁的响应封装,避免手动设置状态码和 Content-Type:

  • c.JSON(200, gin.H{"code": 0, "data": user}) —— 快速返回结构化数据
  • 统一错误响应建议封装成函数,例如 ctx.ErrorResp(400, "invalid id")
  • 需要返回空响应或重定向时,用 c.Status(204)c.Redirect(302, "/login")

添加中间件做基础增强

实际项目中加几个常用中间件就能提升健壮性:

  • 跨域支持:导入 github.com/gin-contrib/cors,调用 cors.Default()
  • 请求日志:Gin 默认已有,也可自定义记录耗时、IP、路径等
  • JWT 验证:在路由组上使用 router.Use(AuthMiddleware()),内部解析 token 并注入用户信息到上下文