当前位置: 移动技术网 > IT编程>脚本编程>Go语言 > Gin框架系列01:极速上手

Gin框架系列01:极速上手

2020年04月07日  | 移动技术网IT编程  | 我要评论

gin是什么?

gin是go语言编写的web框架,具备中间件、崩溃处理、json验证、内置渲染等多种功能。

准备工作

本系列演示所有代码都在github中,感兴趣的同学可以自行查阅,欢迎大家一起完善。

https://github.com/pingyeaa/golang-examples/tree/master/gin

没有安装配置go语言环境的同学请先自行安装,这里不再赘述。首先,我们来创建工作目录gin

mkdir gin && cd gin

然后用go mod命令初始化项目,go mod是go语言的包管理工具,官方推荐使用,有了它就不再受gopath的限制,可以在任何目录初始化项目。

go mod init gin

接下来安装gin库。

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

创建演示代码的入口文件main.go,当前项目结构大致如下。

.
├── go.mod
├── go.sum
└── main.go

编写代码

工作准备就绪之后,来开始今天的代码编写,以经典代码hello word为例。

实例化一个gin对象

r := gin.default()

default方法的主要作用是实例化一个带有日志、故障恢复中间件的引擎。

func default() *engine {
	debugprintwarningdefault()
	engine := new()
	engine.use(logger(), recovery())
	return engine
}

定义请求

定义一个get请求的路由,参数一是路由地址,也就是在浏览器访问的相对路径,参数二是一个匿名函数,函数内部用于业务逻辑处理。

r.get("/hello", func(c *gin.context) {

})

我们就在函数内调用json方法返回数据。json的操作非常简单,参数一是状态码,参数二是json的内容。

r.get("/hello", func(c *gin.context) {
  c.json(200, gin.h{
    "msg": "hello world!",
  })
})

json内容可以通过gin提供的h方法来构建,非常方便。

// h is a shortcut for map[string]interface{}
type h map[string]interface{}

运行

run方法最终会调用内置http库的listenandserve方法来监听端口,如果不传参数默认监听80端口,也可以通过参数来变更地址和端口。

r.run(":8081")

测试

在浏览器访问localhost:8081,如果看到如下提示即成功。

file

完整代码

package main

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

func main() {
	r := gin.default()
	r.get("/ping", func(c *gin.context) {
		c.json(200, gin.h{
			"msg": "hello world!",
		})
	})
	r.run(":8081")
}

go语言库代码示例,欢迎star

感谢大家的观看,如果觉得文章对你有所帮助,欢迎关注公众号「平也」,聚焦go语言与技术原理。 关注我

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网