Files
web_hgtv_server/app/api/healthapi/health.go
T
rootandClaude Opus 5.5 7974a42301 Initial commit
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 11:07:42 +08:00

43 lines
1022 B
Go

package healthapi
import (
"videoweb/app/api/proto"
"videoweb/app/service/healthser"
"videoweb/pub/common/log"
"videoweb/pub/common/srvdef"
"github.com/gin-gonic/gin"
)
// HealthCheck 健康检查接口
func HealthCheck(ctx *gin.Context) {
req := &proto.HealthCheckRequest{}
if err := ctx.ShouldBindJSON(req); err != nil {
log.Warn("health check bind error", log.E(err))
respond(ctx, srvdef.ErrParamError, err.Error(), nil)
return
}
log.Info("health check request", log.Any("req", req))
data, serr := healthser.HealthCheck(ctx.Request.Context(), req)
if serr != nil {
log.Warn("health check failed", log.E(serr), log.Any("req", req))
respond(ctx, serr.Code, serr.GetMsg(), nil)
return
}
log.Info("health check response", log.Any("resp", data))
respond(ctx, srvdef.Success, "success", data)
}
func respond(ctx *gin.Context, code srvdef.CodeType, msg string, data interface{}) {
if msg == "" {
msg = code.Msg()
}
ctx.JSON(200, gin.H{
"code": code,
"msg": msg,
"data": data,
})
}