This commit is contained in:
邹宗楠
2023-12-04 14:35:52 +08:00
parent f9ae142896
commit e06f98509a

View File

@@ -1,8 +1,6 @@
package jdapi
import (
"encoding/json"
"git.rosy.net.cn/jx-callback/globals"
"io/ioutil"
"net/http"
"strings"
@@ -269,17 +267,7 @@ func GetCallbackMsg(request *http.Request) (callbackMsg *CallbackMsg, mapData ma
return nil, nil, FormatErrorResponse
}
mapData = utils.URLValues2Map(values)
err = utils.Map2StructByJson(mapData, &callbackMsg, false)
globals.SugarLogger.Debugf("========mapdata1 := %s", utils.Format4Output(mapData, false))
var callbackMsg2 *CallbackMsg
if err := json.Unmarshal(data, &callbackMsg2); err != nil {
return nil, nil, Err2CallbackResponse(err, "")
}
mapData2 := utils.Struct2MapByJson(callbackMsg2)
globals.SugarLogger.Debugf("========mapData2 := %s", utils.Format4Output(mapData2, false))
if err == nil {
if err = utils.Map2StructByJson(mapData, &callbackMsg, false); err == nil {
callbackMsg.MsgURL = msgURL
if msgURL == CallbackMsgPushDeliveryStatus {
var deliveryMsg *CallbackDeliveryStatusMsg
@@ -320,6 +308,63 @@ func GetCallbackMsg(request *http.Request) (callbackMsg *CallbackMsg, mapData ma
return callbackMsg, mapData, callbackResponse
}
//
//func GetCallbackMsg(request *http.Request) (callbackMsg *CallbackMsg, mapData map[string]interface{}, callbackResponse *CallbackResponse) {
// msgURL := getMsgURLFromRequest(request)
// data, err := ioutil.ReadAll(request.Body)
// if err != nil {
// return nil, nil, Err2CallbackResponse(err, "")
// }
// values, err := utils.HTTPBody2Values(data, needDecodeMap[msgURL])
// if err != nil {
// return nil, nil, FormatErrorResponse
// }
// mapData = utils.URLValues2Map(values)
// if err := json.Unmarshal(data, &callbackMsg); err != nil {
// return nil, nil, Err2CallbackResponse(err, "")
// }
//
// if err == nil {
// callbackMsg.MsgURL = msgURL
// if msgURL == CallbackMsgPushDeliveryStatus {
// var deliveryMsg *CallbackDeliveryStatusMsg
// if err = utils.UnmarshalUseNumber([]byte(callbackMsg.JdParamJSON), &deliveryMsg); err == nil {
// callbackMsg.Param = deliveryMsg
// deliveryMsg.CallbackMsg = callbackMsg
// }
// } else if msgURL == CallbackMsgStockIsHave {
// var mapData map[string]interface{}
// if err = utils.UnmarshalUseNumber([]byte(callbackMsg.JdParamJSON), &mapData); err == nil {
// stockMsg := map2StockCallbackMsg(mapData)
// callbackMsg.Param = stockMsg
// stockMsg.CallbackMsg = callbackMsg
// }
// } else if msgURL == CallbackMsgOrderInfoChange {
// var orderInfoMsg *CallbackOrderInfoChangeMsg
// if err = utils.UnmarshalUseNumber([]byte(callbackMsg.JdParamJSON), &orderInfoMsg); err == nil {
// callbackMsg.Param = orderInfoMsg
// orderInfoMsg.CallbackMsg = callbackMsg
// }
// } else if msgURL == CallBackMsgMemberCreateCard || msgURL == CallBackMsgMemberRenewCard {
// var orderInfoMsg *CallbackMemberMsg
// if err = utils.UnmarshalUseNumber([]byte(callbackMsg.JdParamJSON), &orderInfoMsg); err == nil {
// callbackMsg.Param = orderInfoMsg
// orderInfoMsg.CallbackMsg = callbackMsg
// }
// } else {
// var orderMsg *CallbackOrderMsg
// if err = utils.UnmarshalUseNumber([]byte(callbackMsg.JdParamJSON), &orderMsg); err == nil {
// callbackMsg.Param = orderMsg
// orderMsg.CallbackMsg = callbackMsg
// }
// }
// }
// if err != nil {
// return nil, nil, Err2CallbackResponse(err, "")
// }
// return callbackMsg, mapData, callbackResponse
//}
func (a *API) CheckCallbackValidation(mapData map[string]interface{}, signInData string) (callbackResponse *CallbackResponse) {
sign := a.signParams(mapData)
if sign != signInData {