122 lines
2.9 KiB
Go
122 lines
2.9 KiB
Go
// Package gin ...
|
|
//
|
|
// Description : gin ...
|
|
//
|
|
// Author : go_developer@163.com<白茶清欢>
|
|
//
|
|
// Date : 2023-12-29 15:10
|
|
package request
|
|
|
|
import (
|
|
"git.zhangdeman.cn/zhangdeman/wrapper"
|
|
"github.com/gin-gonic/gin"
|
|
"net/url"
|
|
"strings"
|
|
)
|
|
|
|
var (
|
|
WrapperHandle = &wrapperHandle{}
|
|
)
|
|
|
|
type wrapperHandle struct {
|
|
}
|
|
|
|
// GetHeader 读取header
|
|
//
|
|
// Author : go_developer@163.com<白茶清欢>
|
|
//
|
|
// Date : 21:22 2023/12/25
|
|
func (wh *wrapperHandle) GetHeader(ctx *gin.Context, headerKey string, defaultVal string) string {
|
|
if nil == ctx {
|
|
return defaultVal
|
|
}
|
|
val := ctx.GetHeader(headerKey)
|
|
return wrapper.TernaryOperator.String(len(val) > 0, wrapper.String(val), wrapper.String(defaultVal)).Value()
|
|
}
|
|
|
|
// GetCookie 读取cookie
|
|
//
|
|
// Author : go_developer@163.com<白茶清欢>
|
|
//
|
|
// Date : 21:23 2023/12/25
|
|
func (wh *wrapperHandle) GetCookie(ctx *gin.Context, cookieName string, defaultVal string) string {
|
|
if nil == ctx {
|
|
return ""
|
|
}
|
|
val, err := ctx.Cookie(cookieName)
|
|
if nil != err {
|
|
return defaultVal
|
|
}
|
|
return wrapper.TernaryOperator.String(len(val) > 0, wrapper.String(val), wrapper.String(defaultVal)).Value()
|
|
}
|
|
|
|
// GetUri 获取请求URI
|
|
//
|
|
// Author : go_developer@163.com<白茶清欢>
|
|
//
|
|
// Date : 15:13 2023/12/29
|
|
func (wh *wrapperHandle) GetUri(ctx *gin.Context, defaultVal string) string {
|
|
if nil != ctx && nil != ctx.Request && nil != ctx.Request.URL {
|
|
return ctx.Request.URL.Path
|
|
}
|
|
return defaultVal
|
|
}
|
|
|
|
// GetScheme 获取scheme
|
|
//
|
|
// Author : go_developer@163.com<白茶清欢>
|
|
//
|
|
// Date : 16:16 2024/1/2
|
|
func (wh *wrapperHandle) GetScheme(ctx *gin.Context, defaultVal string) string {
|
|
if nil != ctx && nil != ctx.Request && nil != ctx.Request.URL {
|
|
return ctx.Request.URL.Scheme
|
|
}
|
|
return defaultVal
|
|
}
|
|
|
|
// GetQuery 获取query参数
|
|
//
|
|
// Author : go_developer@163.com<白茶清欢>
|
|
//
|
|
// Date : 16:03 2024/1/2
|
|
func (wh *wrapperHandle) GetQuery(ctx *gin.Context) url.Values {
|
|
if nil != ctx && nil != ctx.Request && nil != ctx.Request.URL {
|
|
return ctx.Request.URL.Query()
|
|
}
|
|
return make(url.Values)
|
|
}
|
|
|
|
// GetMethod 获取请求方法
|
|
//
|
|
// Author : go_developer@163.com<白茶清欢>
|
|
//
|
|
// Date : 15:19 2024/1/2
|
|
func (wh *wrapperHandle) GetMethod(ctx *gin.Context) string {
|
|
if nil != ctx && nil != ctx.Request {
|
|
return ctx.Request.Method
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// GetContentType 获取请求方式
|
|
//
|
|
// Author : go_developer@163.com<白茶清欢>
|
|
//
|
|
// Date : 15:24 2023/12/29
|
|
func (wh *wrapperHandle) GetContentType(ctx *gin.Context, defaultVal string) string {
|
|
if nil == ctx {
|
|
return defaultVal
|
|
}
|
|
contentType := strings.ToLower(ctx.ContentType())
|
|
return wrapper.TernaryOperator.String(len(contentType) > 0, wrapper.String(contentType), wrapper.String(defaultVal)).Value()
|
|
}
|
|
|
|
// GetResponseBody 获取响应body
|
|
//
|
|
// Author : go_developer@163.com<白茶清欢>
|
|
//
|
|
// Date : 15:18 2024/1/2
|
|
func (wh *wrapperHandle) GetResponseBody(ctx *gin.Context, defaultVal string) string {
|
|
return ""
|
|
}
|