24 lines
443 B
Go
24 lines
443 B
Go
package controller
|
|
|
|
import (
|
|
"SciencesServer/config"
|
|
"SciencesServer/serve/cache"
|
|
"SciencesServer/utils"
|
|
)
|
|
|
|
type Key struct{}
|
|
|
|
// Generate 生成秘钥
|
|
func (*Key) Generate(len int) string {
|
|
key := utils.GetRandomString(len)
|
|
for {
|
|
isExist, _ := cache.Cache.SIsMember(config.RedisKeyForTenantKeys, key)
|
|
|
|
if !isExist {
|
|
_ = cache.Cache.SAdd(config.RedisKeyForTenantKeys, key)
|
|
return key
|
|
}
|
|
key = utils.GetRandomString(len)
|
|
}
|
|
}
|