内容简介:Gin是Go语言编写的web框架,具备中间件、崩溃处理、JSON验证、内置渲染等多种功能。本系列演示所有代码都在Github中,感兴趣的同学可以自行查阅,欢迎大家一起完善。没有安装配置Go语言环境的同学请先自行安装,这里不再赘述。首先,我们来创建工作目录
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 ,如果看到如下提示即成功。
完整代码
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
https://github.com/pingyeaa/g...
感谢大家的观看,如果觉得文章对你有所帮助,欢迎关注公众号「平也」,聚焦Go语言与技术原理。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 快速上手前端框架layui
- 小白教程|一小时上手最流行的前端框架vue
- 工具 | 一款上手简单,功能强大的 Python 爬虫框架
- 在spring boot中3分钟上手RPC框架Dubbo
- PyTorch官方教程书限时免费!500页内容带你上手最流行框架
- Kbone 框架快速上手:把 Web 端代码直接移植到小程序的工具是否好用?
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Web性能权威指南
Ilya Grigorik / 李松峰 / 人民邮电出版社 / 2013-9 / 69
本书是谷歌公司高性能团队核心成员的权威之作,堪称实战经验与规范解读完美结合的产物。本书目标是涵盖Web 开发者技术体系中应该掌握的所有网络及性能优化知识。全书以性能优化为主线,从TCP、UDP 和TLS 协议讲起,解释了如何针对这几种协议和基础设施来优化应用。然后深入探讨了无线和移动网络的工作机制。最后,揭示了HTTP 协议的底层细节,同时详细介绍了HTTP 2.0、 XHR、SSE、WebSoc......一起来看看 《Web性能权威指南》 这本书的介绍吧!
JS 压缩/解压工具
在线压缩/解压 JS 代码
HEX HSV 转换工具
HEX HSV 互换工具