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)
|
||
|
}
|
||
|
}
|