refactor(response): 重构API响应结构体并优化配置管理
- 将Api结构体重命名为api并改为小写首字母 - 为Success、Error函数及SetMsg、SetData、SetCode、End方法添加详细注释 - 更新JSON字段名称从Json到JSON以符合Go命名规范 - 为配置相关函数SetDefault、LoadConfigFromFile、SetConfigValue等添加注释 - 在IDEA配置文件中更新结构体映射关系和最后修改时间戳 - 为配置结构体BaseConfig、ServerConfig等添加字段说明注释 - 将验证函数中的Bind方法替换为ShouldBind方法提升性能 - 为中间件ErrorHandler和CORSMiddleware函数添加功能注释
This commit is contained in:
+50
-24
@@ -13,45 +13,71 @@ type response struct {
|
||||
Timestamp int64 `json:"timestamp"`
|
||||
}
|
||||
|
||||
type Api struct {
|
||||
Json *response
|
||||
// api 返回结构体
|
||||
type api struct {
|
||||
JSON *response
|
||||
c *gin.Context
|
||||
}
|
||||
|
||||
func Success(c *gin.Context) *Api {
|
||||
// Success 函数用于创建一个包含成功响应的 api 对象。
|
||||
// 参数 c 是 Gin 框架的上下文对象,用于处理请求和响应。
|
||||
// 返回值是一个指向 API 结构体的指针,其中包含 JSON 响应数据。
|
||||
func Success(c *gin.Context) *api {
|
||||
// 创建响应结构体,包含状态码和时间戳
|
||||
json := &response{
|
||||
Code: 200, // 成功的状态码
|
||||
Timestamp: time.Now().Unix(), // 当前时间的时间戳
|
||||
}
|
||||
// 创建 api 结构体实例,并将响应数据和上下文对象赋值给它
|
||||
r := &api{
|
||||
JSON: json, // JSON 响应数据
|
||||
c: c, // Gin 上下文对象
|
||||
}
|
||||
return r // 返回 api 对象的指针
|
||||
}
|
||||
|
||||
// Error 函数用于创建一个包含错误响应的 api 对象。
|
||||
// 参数 c 是 Gin 框架的上下文对象,用于处理请求和响应。
|
||||
// 返回值是一个指向 api 结构体的指针,其中包含 JSON 响应数据。
|
||||
func Error(c *gin.Context) *api {
|
||||
json := &response{
|
||||
Code: 200,
|
||||
Timestamp: time.Now().Unix(),
|
||||
}
|
||||
r := &Api{
|
||||
Json: json,
|
||||
r := &api{
|
||||
JSON: json,
|
||||
c: c,
|
||||
}
|
||||
return r
|
||||
}
|
||||
func Error(c *gin.Context) *Api {
|
||||
json := &response{
|
||||
Code: 200,
|
||||
Timestamp: time.Now().Unix(),
|
||||
}
|
||||
r := &Api{
|
||||
Json: json,
|
||||
c: c,
|
||||
}
|
||||
|
||||
// SetMsg 方法用于设置 api 对象的 JSON 响应数据中的 Msg 字段。
|
||||
// 参数 msg 是要设置的消息字符串。
|
||||
// 返回值是指向 api 结构体的指针,用于链式调用。
|
||||
func (r *api) SetMsg(msg string) *api {
|
||||
r.JSON.Msg = msg
|
||||
return r
|
||||
}
|
||||
func (r *Api) SetMsg(msg string) *Api {
|
||||
r.Json.Msg = msg
|
||||
|
||||
// SetData 方法用于设置 api 对象的 JSON 响应数据中的 Data 字段。
|
||||
// 参数 data 是要设置的数据,类型为 any(任意类型)。
|
||||
// 返回值是指向 api 结构体的指针,用于链式调用。
|
||||
func (r *api) SetData(data any) *api {
|
||||
r.JSON.Data = data
|
||||
return r
|
||||
}
|
||||
func (r *Api) SetData(data any) *Api {
|
||||
r.Json.Data = data
|
||||
|
||||
// SetCode 方法用于设置 api 对象的 JSON 响应数据中的 Code 字段。
|
||||
// 参数 code 是要设置的状态码,类型为 int。
|
||||
// 返回值是指向 api 结构体的指针,用于链式调用。
|
||||
func (r *api) SetCode(code int) *api {
|
||||
r.JSON.Code = code
|
||||
return r
|
||||
}
|
||||
func (r *Api) SetCode(code int) *Api {
|
||||
r.Json.Code = code
|
||||
return r
|
||||
}
|
||||
func (r *Api) End() {
|
||||
r.c.JSON(r.Json.Code, r.Json)
|
||||
|
||||
// End 方法用于将 api 对象的 JSON 响应数据发送给客户端。
|
||||
// 它使用 Gin 上下文对象的 JSON 方法将 JSON 响应数据发送给客户端。
|
||||
// 参数 r 是指向 api 结构体的指针,包含 JSON 响应数据和 Gin 上下文对象。
|
||||
func (r *api) End() {
|
||||
r.c.JSON(r.JSON.Code, r.JSON)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user