12345678910111213141516171819202122232425262728 |
- package utils
- import (
- "crypto/md5"
- "fmt"
- "sort"
- "strings"
- )
- //请求参数签名校验
- func GetSign(postData map[string]string) (sign string) {
- var keys []string
- for k, _ := range postData {
- if k != "sign" {
- keys = append(keys, k)
- }
- }
- //1,根据参数名称的ASCII码表的顺序排序
- sort.Strings(keys)
- //2 根据排序后的参数名称,取出对应的值,并拼接字符串
- var signStr string
- for _, v := range keys {
- signStr += v + "=" + postData[v] + "&"
- }
- sign = strings.ToUpper(fmt.Sprintf("%x", md5.Sum([]byte(signStr+"secret="+ReportSecret))))
- return
- }
|