golang的web框架Gin(一)---Gin的安装与初体验
简介
1.1 介绍
Go世界里最流行的Web框架,Github上有32K+star。 基于httprouter开发的Web框架。 中文文档齐全,简单易用的轻量级框架。
- Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点
- 对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错
- 借助框架开发,不仅可以省去很多常用的封装带来的时间,也有助于团队的编码风格和形成规范
Gin特征:
- 速度快:基于基数树的路由,内存占用少。没有反射。可预测的API性能。 中间件支持:传入的HTTP请求可以由中间件链和最终操作处理。
- Crash—free:Gin可以捕获HTTP请求期间发生的panic并恢复它。这样,你的服务器将始终可用。
- JSON验证:Gin可以解析和验证请求的JSON-例如,检查所需值的存在
- 路由分组:更好地组织您的路线。需要授权与不需要授权,不同的API版本…此外,组可以无限嵌套,而不会奖低性能。 错误管理
- Gin提供了一种方便的方法来收集HTTP请求期间发生的所有错误。最终,中间件可以将它们写入日志文件、数据库并通过网络发送它们。
- 内置渲染:Gin为JSON、XML和HTML渲染提供了一个易于使用的API
- 可扩展:创建一个新的中间件非常简单,只需查看示例代码即可
1.2 安装
要安装Gin软件包,您需要安装Go并首先设置Go工作区。 1.首先需要安装Go(需要1.10+版本),然后可以使用下面的Go命令安装Gin。
go get -u github.com/gin-gonic/gin
如果下载的时候失败,可能需要进行代理设置
-
Windows 下
# 设置goproxy.io代理 go env -w GOPROXY="https://goproxy.io" # 设置GO111MOUDLE go env -w GO111MODULE="on"
-
mac/linux下
# 设置goproxy.io代理 export GOPROXY=https://goproxy.io # 设置GO111MOUDLE export GO111MODULE=on
2、查看go.mod(相当于maven的pom.xml) 看看依赖是否下载成功 3、编写简单的实例、验证gin框架是否搭建成功
package main import ( "encoding/json" "github.com/gin-gonic/gin" ) func main() { //创建一个服务 ginServer := gin.Default() //访问地址,处理我们的请求 Request Response //gin.Context,封装了request和response ginServer.GET("/hello", func(context *gin.Context) { context.JSON(200, gin.H{ "msg": "hello world", }) }) //服务器端口 //Run("里面不指定端口号默认为8080") ginServer.Run(":8081")
在浏览器进行测试: ok