This commit is contained in:
邹宗楠
2023-03-31 11:32:41 +08:00
parent 352bb15636
commit 6301157379
5 changed files with 89 additions and 24 deletions

View File

@@ -1,11 +1,13 @@
package kuaishou_mini
import (
"crypto/md5"
"errors"
"fmt"
"git.rosy.net.cn/baseapi/platformapi"
"git.rosy.net.cn/baseapi/utils"
"net/http"
"sort"
"strings"
"sync"
)
@@ -93,3 +95,34 @@ func (a *API) AccessAPI2(url string, params map[string]interface{}) (retVal map[
})
return retVal, err
}
// sign 签名
func (a *API) sign(param map[string]interface{}) string {
param["app_id"] = a.appId
var paramsArr []string
for k, v := range param {
if k == "sign" || k == "access_token" {
continue
}
value := strings.TrimSpace(fmt.Sprintf("%v", v))
if strings.HasPrefix(value, "\"") && strings.HasSuffix(value, "\"") && len(value) > 1 {
value = value[1 : len(value)-1]
}
value = strings.TrimSpace(value)
if value == "" || value == "nil" {
continue
}
paramsArr = append(paramsArr, k)
}
sort.Strings(paramsArr)
signParma := make([]string, 0, 0)
for k, v := range paramsArr {
if utils.IsNil(param[v]) {
signParma[k] = v + "=" + fmt.Sprintf("%v", param[v])
}
}
sign := strings.Join(signParma, "&") + a.appSecret
return fmt.Sprintf("%x", md5.Sum([]byte(sign)))
}