Gin框架 | 青训营笔记

65 阅读2分钟

Gin 简介

Gin 是 Golang 的一个微框架,封装比较优雅,API 友好,源码注释比较明确。具有快速灵活,容错方便等特点。其实对于 Golang 而言,Web 框架的依赖要远比 Python,Java 之类的要小。自身的 net/http 足够简单,性能也非常不错。框架更像是一些常用函数或者工具的集合。借助框架开发,不仅可以省去很多常用的封装带来的时间,也有助于团队的编码风格和形成规范。下面我们将具体介绍 Gin 的使用实践。

Gin特征

Gin特征:
1.速度快:基于基数树的路由,内存占用少。没有反射。可预测的API性能。 中间件支持:传入的HTTP请求可以由中间件链和最终操作处理。
2.Crash—free Gin可以捕获HTTP请求期间发生的panic并恢复它。这样,你的服务器将始终可用。
3.JSON验证 Gin可以解析和验证请求的JSON-例如,检查所需值的存在
4.路由分组 更好地组织您的路线。需要授权与不需要授权,不同的API版本…此外,组可以无限嵌套,而不会奖低性能。
错误管理 5.Gin提供了一种方便的方法来收集HTTP请求期间发生的所有错误。最终,中间件可以将它们写入日志文件、数据库并通过网络发送它们。
6.内置渲染 Gin为JSON、XML和HTML渲染提供了一个易于使用的API
7.可扩展 创建一个新的中间件非常简单,只需查看示例代码即可

Gin安装

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

示例

import (
    "net/http"
 
    "github.com/gin-gonic/gin"
)
 
func main() {
    // 1.创建路由
   r := gin.Default()
   // 2.绑定路由规则,执行的函数
   // gin.Context,封装了request和response
   r.GET("/", func(c *gin.Context) {
      c.String(http.StatusOK, "hello World!")
   })
   // 3.监听端口,默认在8080
   // Run("里面不指定端口号默认为8080") 
   r.Run(":8000")
}

将上面的代码保存并编译执行,然后使用浏览器打开127.0.0.1:8080/hello就能看到一串JSON字符串。