- don't check sign when there isn't sign data in mtwm callback.
This commit is contained in:
@@ -5,6 +5,7 @@ import (
|
|||||||
"net/url"
|
"net/url"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
|
"git.rosy.net.cn/baseapi"
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -51,9 +52,11 @@ func Err2CallbackResponse(err error, data string) *CallbackResponse {
|
|||||||
|
|
||||||
func (a *API) GetCallbackMsg(request *http.Request) (msg *CallbackMsg, callbackResponse *CallbackResponse) {
|
func (a *API) GetCallbackMsg(request *http.Request) (msg *CallbackMsg, callbackResponse *CallbackResponse) {
|
||||||
data := utils.URLValues2Map(request.PostForm)
|
data := utils.URLValues2Map(request.PostForm)
|
||||||
|
if dataSign, ok := data[signKey]; ok {
|
||||||
fullURL := strings.TrimRight(a.callbackURL+request.URL.Path, "/")
|
fullURL := strings.TrimRight(a.callbackURL+request.URL.Path, "/")
|
||||||
sign := a.signParams(fullURL+"?", data)
|
sign := a.signParams(fullURL+"?", data)
|
||||||
if sign != data[signKey] {
|
if sign != dataSign.(string) {
|
||||||
|
baseapi.SugarLogger.Debugf("mtwm GetCallbackMsg my sign:%v, data sign:%v", sign, dataSign.(string))
|
||||||
return nil, SignatureIsNotOk
|
return nil, SignatureIsNotOk
|
||||||
}
|
}
|
||||||
cmd := strings.Trim(request.URL.EscapedPath(), "/")
|
cmd := strings.Trim(request.URL.EscapedPath(), "/")
|
||||||
@@ -67,3 +70,5 @@ func (a *API) GetCallbackMsg(request *http.Request) (msg *CallbackMsg, callbackR
|
|||||||
}
|
}
|
||||||
return msg, nil
|
return msg, nil
|
||||||
}
|
}
|
||||||
|
return nil, SuccessResponse
|
||||||
|
}
|
||||||
|
|||||||
@@ -106,7 +106,7 @@ func MustInterface2Float64(data interface{}) float64 {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func Interface2FloatWithDefault(data interface{}, defValue float64) (retVal float64) {
|
func Interface2FloatWithDefault(data interface{}, defValue float64) (retVal float64) {
|
||||||
if data == nil {
|
if _, ok := data.(json.Number); !ok {
|
||||||
return defValue
|
return defValue
|
||||||
}
|
}
|
||||||
return MustInterface2Float64(data)
|
return MustInterface2Float64(data)
|
||||||
|
|||||||
Reference in New Issue
Block a user