代码拉取完成,页面将自动刷新
同步操作将从 andeyalee/erpc 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
package teleport
import (
"crypto/md5"
"encoding/hex"
"encoding/json"
"fmt"
"hash/crc32"
"hash/fnv"
"strconv"
)
//string to hash
func MakeHash(s string) string {
const IEEE = 0xedb88320
var IEEETable = crc32.MakeTable(IEEE)
hash := fmt.Sprintf("%x", crc32.Checksum([]byte(s), IEEETable))
return hash
}
func HashString(encode string) uint64 {
hash := fnv.New64()
hash.Write([]byte(encode))
return hash.Sum64()
}
// 制作特征值方法一
func MakeUnique(obj interface{}) string {
baseString, _ := json.Marshal(obj)
return strconv.FormatUint(HashString(string(baseString)), 10)
}
// 制作特征值方法二
func MakeMd5(obj interface{}, length int) string {
if length > 32 {
length = 32
}
h := md5.New()
baseString, _ := json.Marshal(obj)
h.Write([]byte(baseString))
s := hex.EncodeToString(h.Sum(nil))
return s[:length]
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。