18 lines
547 B
Go
18 lines
547 B
Go
package chat
|
||
|
||
import (
|
||
"crypto/md5"
|
||
"encoding/hex"
|
||
"strconv"
|
||
"time"
|
||
)
|
||
|
||
// signOpenApi 生成 chat open 接口验签三参数(对齐 chat 侧 ControllerBase::authorizedByConfig):
|
||
// sign = md5(gkey + time + key),time 为当前 Unix 秒,与服务器差 >3600s 会被拒。
|
||
// 密钥 key 由调用方从自身配置传入,SDK 不落任何密钥。
|
||
func signOpenApi(gkey, key string) (g, t, s string) {
|
||
t = strconv.FormatInt(time.Now().Unix(), 10)
|
||
sum := md5.Sum([]byte(gkey + t + key))
|
||
return gkey, t, hex.EncodeToString(sum[:])
|
||
}
|