|
|
@@ -13,43 +13,6 @@ import (
|
|
|
"strings"
|
|
|
)
|
|
|
|
|
|
-//JSAPI支付,支付参数后,再次计算出小程序用的paySign
|
|
|
-func GetMiniPaySign(appId, nonceStr, prepayId, signType, timeStamp, secretKey string) (paySign string) {
|
|
|
- buffer := new(bytes.Buffer)
|
|
|
- buffer.WriteString("appId=")
|
|
|
- buffer.WriteString(appId)
|
|
|
-
|
|
|
- buffer.WriteString("&nonceStr=")
|
|
|
- buffer.WriteString(nonceStr)
|
|
|
-
|
|
|
- buffer.WriteString("&package=")
|
|
|
- buffer.WriteString(prepayId)
|
|
|
-
|
|
|
- buffer.WriteString("&signType=")
|
|
|
- buffer.WriteString(signType)
|
|
|
-
|
|
|
- buffer.WriteString("&timeStamp=")
|
|
|
- buffer.WriteString(timeStamp)
|
|
|
-
|
|
|
- buffer.WriteString("&key=")
|
|
|
- buffer.WriteString(secretKey)
|
|
|
-
|
|
|
- signStr := buffer.String()
|
|
|
-
|
|
|
- var hashSign []byte
|
|
|
- if signType == SignType_MD5 {
|
|
|
- hash := md5.New()
|
|
|
- hash.Write([]byte(signStr))
|
|
|
- hashSign = hash.Sum(nil)
|
|
|
- } else {
|
|
|
- hash := hmac.New(sha256.New, []byte(secretKey))
|
|
|
- hash.Write([]byte(signStr))
|
|
|
- hashSign = hash.Sum(nil)
|
|
|
- }
|
|
|
- paySign = strings.ToUpper(hex.EncodeToString(hashSign))
|
|
|
- return
|
|
|
-}
|
|
|
-
|
|
|
//本地通过支付参数计算Sign值
|
|
|
func getLocalSign(secretKey string, signType string, body BodyMap) (sign string) {
|
|
|
signStr := sortSignParams(secretKey, body)
|