diff --git a/request/wrapper.go b/request/wrapper.go index 1cdc62a..9efc290 100644 --- a/request/wrapper.go +++ b/request/wrapper.go @@ -119,3 +119,75 @@ func (wh *wrapperHandle) GetContentType(ctx *gin.Context, defaultVal string) str func (wh *wrapperHandle) GetResponseBody(ctx *gin.Context, defaultVal string) string { return "" } + +// GetClientIp 获取请求客户端IP +// +// Author : go_developer@163.com<白茶清欢> +// +// Date : 16:31 2024/7/23 +func (wh *wrapperHandle) GetClientIp(ctx *gin.Context, defaultVal string) string { + if nil == ctx { + return defaultVal + } + return ctx.ClientIP() +} + +// GetUserAgent 获取user_agent +// +// Author : go_developer@163.com<白茶清欢> +// +// Date : 16:32 2024/7/23 +func (wh *wrapperHandle) GetUserAgent(ctx *gin.Context, defaultVal string) string { + if nil == ctx { + return defaultVal + } + return ctx.Request.UserAgent() +} + +// GetCtxData 获取请求上下文数据 +// +// Author : go_developer@163.com<白茶清欢> +// +// Date : 16:35 2024/7/23 +func (wh *wrapperHandle) GetCtxData(ctx *gin.Context, key string, defaultVal any) any { + if nil == ctx { + return defaultVal + } + if val, exist := ctx.Get(key); !exist || nil == val { + return defaultVal + } else { + return val + } +} + +// GetCtxStringData 获取字符串数据 +// +// Author : go_developer@163.com<白茶清欢> +// +// Date : 16:37 2024/7/23 +func (wh *wrapperHandle) GetCtxStringData(ctx *gin.Context, key string, defaultVal string) string { + if nil == ctx { + return defaultVal + } + val := ctx.GetString(key) + if len(val) == 0 { + return defaultVal + } + return val +} + +// GetCtxIntData 获取int数据 +// +// Author : go_developer@163.com<白茶清欢> +// +// Date : 16:39 2024/7/23 +func (wh *wrapperHandle) GetCtxIntData(ctx *gin.Context, key string, defaultVal int64) int64 { + if nil == ctx { + return defaultVal + } + val := wh.GetCtxData(ctx, key, nil) + if nil == val { + return defaultVal + } + return ctx.GetInt64(key) +}