go安装使用gin 框架

Gin 是一个非常流行的 Go Web 框架,轻量、高性能、API 友好。下面是 Gin 的安装和基本使用教程:


一、安装 Gin

确保你已经安装了 Go 开发环境(Go 1.16 及以上版本更好)并设置好了 GOPATH

使用 go modules(推荐方式)

在项目目录下执行:

Go 复制代码
go mod init your_project_name
go get -u github.com/gin-gonic/gin

二、创建 Gin 示例项目

目录结构如下:

Go 复制代码
your_project/
│
├── go.mod
├── main.go

main.go 示例代码:

Go 复制代码
package main

import (
    "github.com/gin-gonic/gin"
    "net/http"
)

func main() {
    r := gin.Default() // 使用默认中间件(Logger 和 Recovery)

    // 定义一个 GET 路由
    r.GET("/ping", func(c *gin.Context) {
        c.JSON(http.StatusOK, gin.H{
            "message": "pong",
        })
    })

    // 启动服务,监听在 0.0.0.0:8080
    r.Run()
}

三、运行项目

Go 复制代码
go run main.go

浏览器访问 http://localhost:8080/ping,你应该能看到:

Go 复制代码
{
  "message": "pong"
}

四、常用功能示例

1. 路由参数:

Go 复制代码
r.GET("/user/:name", func(c *gin.Context) {
    name := c.Param("name")
    c.String(http.StatusOK, "Hello %s", name)
})

2. POST 请求 + JSON 解析:

Go 复制代码
type Login struct {
    User string `json:"user" binding:"required"`
    Pass string `json:"pass" binding:"required"`
}

r.POST("/login", func(c *gin.Context) {
    var login Login
    if err := c.ShouldBindJSON(&login); err != nil {
        c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
        return
    }
    c.JSON(http.StatusOK, gin.H{"status": "you are logged in"})
})

五、自动热重载(开发用)

你可以使用 airgin 工具进行热重载:

安装 air:

Go 复制代码
go install github.com/air-verse/air@latest

在项目根目录运行:

Go 复制代码
air

air的使用详解上一篇《Go 的热重载工具 Air 详解