当前位置: 首页 > ai >正文

go安装使用gin 框架

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


一、安装 Gin

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

使用 go modules(推荐方式)

在项目目录下执行:

go mod init your_project_name
go get -u github.com/gin-gonic/gin

二、创建 Gin 示例项目

目录结构如下:

your_project/
│
├── go.mod
├── main.go

main.go 示例代码:

package mainimport ("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:8080r.Run()
}

三、运行项目

go run main.go

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

{"message": "pong"
}

四、常用功能示例

1. 路由参数:

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

2. POST 请求 + JSON 解析:

type Login struct {User string `json:"user" binding:"required"`Pass string `json:"pass" binding:"required"`
}r.POST("/login", func(c *gin.Context) {var login Loginif 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 install github.com/air-verse/air@latest

在项目根目录运行:

air

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

http://www.xdnf.cn/news/15667.html

相关文章:

  • web3 区块链技术与用
  • 【论文精读】基于共识的分布式量子分解算法用于考虑最优传输线切换的安全约束机组组合
  • Django母婴商城项目实践(五)- 数据模型的搭建
  • UniApp TabBar 用户头像方案:绕过原生限制的实践
  • Selenium 攻略:从元素操作到 WebDriver 实战
  • STM32之L298N电机驱动模块
  • 【iOS】MRC与ARC
  • Fish Speech:开源多语言语音合成的革命性突破
  • 伺服电机与步进电机要点详解
  • 专题:2025智能体研究报告|附70份报告PDF、原数据表汇总下载
  • 质变科技亮相可信数据库发展大会,参编《数据库发展研究报告2025》
  • Linux学习之认识Linux的基本指令
  • 前端性能优化“核武器”:新一代图片格式(AVIF/WebP)与自动化优化流程实战
  • 多模态大模型重构人机交互,全感官时代已来
  • 微服务项目总结
  • 短视频矩阵系统:选择与开发的全方位指南
  • Python网络爬虫实现selenium对百度识图二次开发以及批量保存Excel
  • Java学习------使用Jemter测试若依项目自定义的功能
  • Unity 常见数据结构分析与实战展示 C#
  • APIs案例及知识点串讲(下)
  • CES Asia 2025备受瞩目,跨国企业锁定亚洲战略首发契机
  • 基于Ubuntu22.04源码安装配置RabbitVCS过程记录
  • ARM64高速缓存,内存属性及MAIR配置
  • 基于华为openEuler系统安装DailyNotes个人笔记管理工具
  • Java全栈面试实录:从Spring Boot到AI大模型的深度解析
  • Glary Utilities (PC维护百宝箱) v6.24.0.28 便携版
  • 云原生 DevOps 实战之Jenkins+Gitee+Harbor+Kubernetes 构建自动化部署体系
  • 密码学基础概念详解:从古典加密到现代密码体系
  • 外网访问基于 Git 的开源文件管理系统 Gogs
  • Anime.js 超级炫酷的网页动画库之SVG路径动画