这是我参与「第五届青训营 」伴学笔记创作活动的第 6 天.
gin简介
Gin是一个用Go语言编写的web框架。它是一个类似于martini但拥有更好性能的API框架, 由于使用了httprouter,速度提高了近40倍。 如果你是性能和高效的追求者, 你会爱上Gin。
gin框架的安装
go get github.com/gin-gonic/gin
gin框架的使用
package main
import (
"net/http"
"github.com/gin-gonic/gin"
)
func main() {
r := gin.Default()
//配置路由
r.GET("/", func(c *gin.Context) {
c.String(http.StatusOK, "值:%v", "你好gin")
})
r.Run(":8080") //启动一个服务
}
示例代码跑起来大概是这个效果
约定
REST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移”或“表现层状态转化”。 简单来说,REST的含义就是客户端与Web服务器之间进行交互的时候,使用HTTP协议中的4个请求方法代表不同的动作。
GET用来获取资源
POST用来新建资源
PUT用来更新资源
DELETE用来删除资源。 只要API程序遵循了REST风格,那就可以称其为RESTful API。目前在前后端分离的架构中,前后端基本都是通过RESTful API来进行交互。
例如,我们现在要编写一个管理书籍的系统,我们可以查询对一本书进行查询、创建、更新和删除等操作,我们在编写程序的时候就要设计客户端浏览器与我们Web服务端交互的方式和路径。
gin获取参数的方法
第一种是使用Query来获取
func Login(c *gin.Context) {
username := c.Query("username")
password := c.Query("password")
}
第二种是使用form来获取
func Login(c *gin.Context) {
username := c.PostForm("username")
password := c.PostForm("password")
}
开发RESTful API的时候我使用ApiPost7来作为客户端的测试工具。