Gin框架笔记(一) Gin框架的安装与Hello World

简介: Gin框架笔记(一) Gin框架的安装与Hello World

什么是Gin框架

Gin是一个golang的微框架,基于 httprouter,封装比较优雅,API友好,源码注释比较明确。具有快速灵活,容错率高,高性能等特点。框架更像是一些常用函数或者工具的集合。借助框架开发,不仅可以省去很多常用的封装带来的时间,也有助于团队的编码风格和形成规范。

Gin框架的特性

  • 快速
    基于 Radix 树的路由,小内存占用。没有反射。可预测的 API 性能。
  • 支持中间件
    传入的 HTTP 请求可以由一系列中间件和最终操作来处理。 例如:Logger,Authorization,GZIP,最终操作 DB。
  • Crash 处理
    Gin 可以 catch 一个发生在 HTTP 请求中的 panic 并 recover 它。这样,你的服务器将始终可用。例如,你可以向 Sentry 报告这个 panic!
  • JSON 验证
    Gin 可以解析并验证请求的 JSON,例如检查所需值的存在。
  • 路由组
    更好地组织路由。是否需要授权,不同的 API 版本…… 此外,这些组可以无限制地嵌套而不会降低性能。
  • 错误管理
    Gin 提供了一种方便的方法来收集 HTTP 请求期间发生的所有错误。最终,中间件可以将它们写入日志文件,数据库并通过网络发送。
  • 内置渲染
    Gin 为 JSON,XML 和 HTML 渲染提供了易于使用的 API。
  • 可扩展性
    我们想对中间件进行修改或添加中间件非常的简单

Gin框架的安装

Gin框架的安装非常简单,我们只需要打开终端,输入以下命令即可:

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

当然这样还是不行,我们需要打开终端,到项目路径下,输入go mod init 项目名,然后新建文件,输入:

package main
import "github.com/gin-gonic/gin"
func main() {
  r := gin.Default()
  
}

但是这时候它可能是这样的:

这时候我们在终端输入:

go mod tiddy

像下面这样就可以了:

Gin框架代码示例

我们可以尝试与Web浏览器进行一个简单的交互,尝试在网页中打印一个Hello world(毕竟是梦的开始),代码如下:

package main
import "github.com/gin-gonic/gin"
func main() {
  r := gin.Default() //创建路由
  r.GET(
    "/", func(c *gin.Context) {
      c.String(200, "hello World")
    })
  r.Run(":8080")
}

我们运行它,然后访问http://127.0.0.1:8080/就可以看到:

说明我们的代码就运行成功了!

相关文章
|
Go API 网络架构
Gin框架快速入门1
Gin框架快速入门1
370 0
|
SQL 关系型数据库 MySQL
gin框架学习-Gorm入门指南
Snake Case命名风格,就是各个单词之间用下划线(_)分隔,首字母大写区分一个单词,例如: CreateTime的Snake Case风格命名为create_time
946 0
gin框架学习-Gorm入门指南
|
网络协议 安全 网络安全
WireGuard 系列文章(六):Netmaker 安装
WireGuard 系列文章(六):Netmaker 安装
|
JavaScript 内存技术
fnm 安装、卸载与使用(详细步骤)
fnm 安装、卸载与使用(详细步骤)
3713 0
|
10月前
|
JSON Cloud Native Go
开箱即用的 GoWind Admin|风行,企业级前后端一体中后台框架:后端权限控制
GoWind Admin「风行」是企业级中后台框架,集成Casbin与OPA实现API权限控制。支持RBAC、ABAC等模型,开箱即用,助力高效构建安全的前后端一体化系统。
797 1
|
JavaScript
Pinia 与 Vuex 4 相比有哪些优缺点?
Pinia 与 Vuex 4 相比有哪些优缺点?
675 57
|
消息中间件 JSON Java
Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
34637 1
|
存储 NoSQL 算法
MongoDB保姆级指南(中):从副本集群、分片集群起航,探索分布式存储的趋势!
本文一起来聊聊MongoDB集群,顺带以MongoDB集群为起点,共同探讨一下分布式存储的发展趋势~
3296 15
下一篇
开通oss服务