cloudreve源码来构建项目的脚手架

接口中, 定义 service
service返回响应方法;

// UserLogin 用户登录  
func UserLogin(c *gin.Context) {  
    var service user.UserLoginService  
    if err := c.ShouldBindJSON(&service); err == nil {  
       res := service.Login(c)  
       c.JSON(200, res)  
    } else {  
       c.JSON(200, ErrorResponse(err))  
    }  
}

定义的 service

// UserLoginService 管理用户登录的服务  
type UserLoginService struct {  
    //TODO 细致调整验证规则  
    UserName string `form:"userName" json:"userName" binding:"required,email"`  
    Password string `form:"Password" json:"Password" binding:"required,min=4,max=64"`  
}

service定义的方法:
返回一个标准的响应:

// Response 基础序列化器  
type Response struct {  
    Code  int         `json:"code"`  
    Data  interface{} `json:"data,omitempty"`  
    Msg   string      `json:"msg"`  
    Error string      `json:"error,omitempty"`  
}
posted @   潜行1  阅读(35)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示