目录
1 介绍
Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点
对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错
借助框架开发,不仅可以省去很多常用的封装带来的时间,也有助于团队的编码风格和形成规范.
2 练习
本次练习继续对之前的代码进行改善,主要工作是封装软件各个层面的相应。
具体而言,代码如下,主要是response功能
以及两个实现实例,Succees和fail。
package response
import (
"net/http"
"github.com/gin-gonic/gin"
)
func Response(ctx *gin.Context, httpStatus int, code int, data gin.H, msg string) {
ctx.JSON(httpStatus, gin.H{
"code": code,
"data": data,
"msg": msg,
})
}
func Success(ctx *gin.Context, data gin.H, msg string) {
Response(ctx, http.StatusOK, 200, data, msg)
}
func Fail(ctx *gin.Context, msg string, data gin.H) {
Response(ctx, http.StatusOK, 400, data, msg)
}
最初版
if len(telephone) != 11 {
ctx.JSON(http.StatusUnprocessableEntity,
gin.H{"code": 422, "msg": "手机号必须为11位"})
return
}
改装成果
if len(telephone) != 11 {
response.Response(ctx, http.StatusUnprocessableEntity,
422, nil, "手机号必须为11位")
return
}
友情援助
有问题的可以关注公众号,博主会在24小时内回复。