GIN框架学习记录1——初始化第一个后端
GIN框架学习记录1——初始化第一个后端
前言
别问,其实我早就在学了。但是现在梳理出来下
这不是一个正式的教学,只能作为参考
正文
gin框架初始化
关于安装和导入的教程,不想多说,想学gin框架的用户这些应该都会的吧
gin想要初始化,只需要一步即可,
1 | server := gin.Default() |
该命令代表初始化一个gin对象,使用默认的中间件(log+恢复器)
我们之后的操作,就基于我们生成出来这个server对象来操作了
PS:如果你想让终端有颜色,推荐加上这个命令
gin.ForceConsoleColor()
路由相关
gin初始化好了,咱们自然就要给路径分配路由,用于指向不同的功能(比如我们需要admin为后台/为主页,就需要路由来实现)
具体的语法如下
- 方法:代表请求协议方法,如GET/POST/PUT/DELETE
- 返回类型:返回给请求端的信息类型,如HTML/JSON/STRING
- 状态码:HTTP协议状态码,如200
- 具体返回内容:根据你选择的返回类型,写入具体的信息
1 | server.<方法>("<路径>", func(context *gin.Context) { |
看着很懵逼?我们来展示一个实战(返回string)
方法类型
这个示例将会展示不同的请求类型
注意:状态码部分,我使用了一个叫http.StatusOK的变量来代替了200,这个变量指向就是200,在此推荐使用这种写法,这样哪怕一些极端环境(比如更换了200的定义),系统也会自动修改。
1 | # 使用GET方法,返回ABAB |
路径相关
这个示例会展示根据不同的路径使用不同的路由
请注意,可以使用不同的方法指定同一个路径,如使用GET指定/和使用POST指定/为不同的路由是可以的
1 | # 下方统一使用GET方法,这里我们指定/路径为路由,返回字符串根 |
返回类型与返回内容
这部分比较特殊,我们在之前的演示中,都是返回string,但是,在我们实际开发中,我们可能会返回HTML,JSON,JSONP等类型,这样的话,我们就需要指定返回类型(指定的类型其实就是Content-Type)
我们看一组实例
返回string
这是最简单的一种了,直接给前端返回一串字符串
1 | server.GET("/", func(context *gin.Context) { |
返回json
这个就比较特殊了,在gin框架中,定义我们需要传入的信息为interface空接口,因此如果我们几乎可以返回任何结构体,但是前提还是他得满足json的定义,在gin框架中,给我们定义了一个快捷的结构体gin.H,该结构体可以直接返回,我们可以自由编辑,适合临时使用,对于实际情况下,我们建议对我们的信息单独定义个结构体。
1 | # 使用gin.H返回json |
返回HTML
返回HTML比较特殊,我们需要在我们程序运行的目录下,新建指定的路径,然后在程序中导入路径后使用。
具体看这个示例
该示例在一个路径下,该路径下有个templates文件夹,该文件夹下有一个HTML文件,名称为index.html
1 | # 读取对应的路径 |
在这样操作后,访问/news,就会自动返回index.html中的内容了,HTML返回有很多玩法,会在后面讲到
其他类型
自己研究,哈哈
启动程序
当我们配置好路由后,就可以准备开始运行了,但是,我们还需要为其指定端口号信息,才能在指定端口上运行,具体如下
其中:8080就是你要运行在的端口号了
1 | server.Run(":8080") |
编写完毕后,我们就实现了一个简单的后端了。是不是很简单啦





