gin 统一响应结果封装
时间: 2024-02-11 15:35:55 浏览: 47
在 web 应用中,常常需要对客户端请求进行响应。为了方便管理和统一格式,我们可以对响应结果进行封装。
以下是一个简单的 gin 统一响应结果封装示例:
```go
type Response struct {
Code int `json:"code"`
Message string `json:"message"`
Data interface{} `json:"data"`
}
func Success(c *gin.Context, data interface{}) {
res := Response{
Code: 0,
Message: "success",
Data: data,
}
c.JSON(http.StatusOK, res)
}
func Error(c *gin.Context, code int, message string) {
res := Response{
Code: code,
Message: message,
Data: nil,
}
c.JSON(http.StatusOK, res)
}
```
上面的代码定义了一个 `Response` 结构体,包含响应状态码、响应消息和响应数据。其中,响应数据是一个 interface 类型,可以根据实际情况传入不同的类型数据。
定义了 `Success` 和 `Error` 两个函数,分别用于返回成功和失败的响应结果。在这里,我们将统一将 HTTP 状态码设置为 200。
在实际使用中,可以根据具体业务场景进行修改和扩展。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)