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

1.Gin 介绍

1.Gin 介绍

介绍

Gin 是一个 Go (Golang) 编写的轻量级 http web 框架,运行速度非常快,如果你是性能和高效的追求者,我们推荐你使用 Gin 框架。

Gin 最擅长的就是 Api 接口的高并发,如果项目的规模不大,业务相对简单,这个时候我们 也推荐您使用 Gin。当某个接口的性能遭到较大挑战的时候,这个还是可以考虑使用 Gin 重写接口。

Gin 也是一个流行的 golang Web 框架,Github Strat 量已经超过了 50k。

Gin 的官网:https://gin-gonic.com/zh-cn/

Gin Github 地址:https://github.com/gin-gonic/gin

安装

要安装Gin软件包,您需要安装Go并首先设置Go工作区。

1.首先需要安装Go(需要1.10+版本),然后可以使用下面的Go命令安装Gin。

# 查看可以安装的版本
go list -m -versions  github.com/gin-gonic/gin
# 安装特定版本
go get github.com/gin-gonic/gin@v1.9.1
# 下载项目的所有依赖项
go mod download

或者安装最新

go get -u github.com/gin-gonic/gin

2.将其导入您的代码中:

import "github.com/gin-gonic/gin"

3.(可选)导入net/http。例如,如果使用常量,则需要这样做http.StatusOK。

import "net/http"

编写 Hello World 项目

创建项目

83e9a721a12696700071260fe3674eba.png
1695550902451

初始化包管理

执行 go mod init 项目名称 如下:

go mod init go-gin-pratice
go mod tidy
go mod download
455400837dd722a39ccba7815033adbc.png
1695600937032

创建 main.go 主函数,编写示例代码

package mainimport ("github.com/gin-gonic/gin""net/http"
)func main() {// 1.创建路由r := gin.Default()// 2.绑定路由规则,执行的函数// gin.Context,封装了request和responser.GET("/", func(c *gin.Context) {c.String(http.StatusOK, "hello World!")})r.GET("/ping", func(c *gin.Context) {c.JSON(200, gin.H{"message": "pong",})})// 3.监听端口,默认在8080// 监听并在 0.0.0.0:8080 上启动服务// Run("里面不指定端口号默认为8080")r.Run(":8000")
}

执行启动

go run main.go
1bc3c8fc85336d428d1e42e446c8599f.png
1695601036836

测试访问

  • 访问 http://localhost:8000/

1742f8ca02600fc4265964d88cb6287d.png
1695601065866
  • 访问 http://localhost:8000/ping

4b1a40865122dae4b81db47083cf5587.png
1695601095010
http://www.lryc.cn/news/240445.html

相关文章:

  • 华三无线控制器WX2540H配合准入做Portal认证
  • OAK相机通过振动测试!
  • 使用Pytorch从零开始构建RNN
  • Linux之实现简易的shell
  • 如何实现在公网下使用navicat图形化工具远程连接本地内网的MariaDB数据库
  • MySQL InnoDB 引擎底层解析(三)
  • 浅析基于智能音视频技术的城市重要场馆智能监控系统设计
  • hdu-lcy算法培训班 入门第一讲 数学基础
  • 获取ip属地(ip2region本地离线包-超简单)
  • 主流的低代码平台有哪些?程序员应该如何与低代码相处?
  • 华为---OSPF网络虚连接(Virtual Link)简介及示例配置
  • Python函数式编程:让你的代码更优雅更简洁
  • 艺术作品3D虚拟云展厅能让客户远程身临其境地欣赏美
  • 负载均衡简介
  • 【高级网络程序设计】Week2-1 Sockets
  • quickapp_快应用_requestHeader
  • FPGA----ZCU106使用petalinux 2019.1的第一个app开发
  • 华为ac+fit漫游配置案例
  • Jenkins 配置节点交换内存
  • 二百零七、Flume——Flume实时采集5分钟频率的Kafka数据直接写入ODS层表的HDFS文件路径下
  • 【实验】配置用户自动获取IPv6地址的案例
  • 手撕A*算法(详解A*算法)
  • 1688API如何获取商品详情信息(关键词搜索商品列表),1688API接口开发系列
  • 〖大前端 - 基础入门三大核心之JS篇㊶〗- DOM事件传播和事件监听方法addEventListener()
  • Cartographer实现双雷达建图
  • (离散数学)主析取范式
  • Communications link failure
  • XC3320 离线式、无电感交流输入线性稳压器 可替代KP3310 固定5V输出电压
  • 导购APP、淘客查券机器人与淘客系统:全面对比与选择
  • 飞翔的鸟游戏