debug toekn

This commit is contained in:
eson
2023-10-17 17:25:48 +08:00
parent a1e0c7c5f5
commit e00dc9f3cf
12 changed files with 299 additions and 33 deletions

View File

@@ -116,10 +116,10 @@ var (
)
type Response struct {
rewriteHandlerFunc http.HandlerFunc
Code int `json:"code"`
Message string `json:"msg"`
Data interface{} `json:"data"`
Code int `json:"code"`
Message string `json:"msg"`
Data interface{} `json:"data"`
Debug interface{} `json:"debug"` // debug的相关数据
}
// Set 设置Response的Code和Message值
@@ -272,22 +272,3 @@ func RequestFileParse(r *http.Request, req any) error {
return nil
}
// RewriteHandler
func (resp *Response) SetRewriteHandler(do http.HandlerFunc) *Response {
resp = &Response{
Code: 304,
}
resp.rewriteHandlerFunc = do
return resp
}
// RewriteHandler
func (resp *Response) rewriteHandler(w http.ResponseWriter, r *http.Request) {
resp.rewriteHandlerFunc(w, r)
}
// Set 设置Response的Code和Message值
func (resp *Response) isRewriteHandler() bool {
return resp.rewriteHandlerFunc != nil
}

View File

@@ -61,7 +61,13 @@ func ParseJwtToken(r *http.Request, svcCtx any) (*auth.UserInfo, error) {
// userId, err := strconv.ParseInt(token, 10, 64)
var secret uint64 = 0
token, info, err := auth.ParseJwtTokenHeader[auth.UserInfo](r) //解析Token头, 和payload信息
token, info, err := auth.ParseJwtTokenWithHeader[auth.UserInfo]("Authorization", r) //解析Token头, 和payload信息
if err != nil {
logx.Error(err)
return nil, err
}
debugInfo, err := auth.ParseDebugJwtTokenWithHeader("Debug-Token", r) //解析Token头, 和payload信息
if err != nil {
logx.Error(err)
return nil, err
@@ -115,6 +121,10 @@ func ParseJwtToken(r *http.Request, svcCtx any) (*auth.UserInfo, error) {
userinfo = &auth.UserInfo{UserId: 0, GuestId: 0}
}
if debugInfo != nil {
userinfo.Debug = debugInfo
}
return userinfo, nil
}
@@ -130,6 +140,8 @@ func RequestParse(w http.ResponseWriter, r *http.Request, svcCtx any, LogicReque
return nil, err
}
// Debug-Token
// 如果端点有请求结构体则使用httpx.Parse方法从HTTP请求体中解析请求数据
if err = httpx.Parse(r, LogicRequest); err != nil {
httpx.OkJsonCtx(r.Context(), w, &Response{