1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- package utils
- import (
- "context"
- "github.com/flipped-aurora/gin-vue-admin/server/global"
- "github.com/medivhzhan/weapp/token"
- "go.uber.org/zap"
- "math/rand"
- )
- func GetToken() string {
- tok, err := global.GVA_REDIS.Get(context.Background(), "wxtoken").Result()
- if err != nil || tok == "" {
- tok, exp, err := token.AccessToken(global.GVA_CONFIG.Wxxcx.Appid, global.GVA_CONFIG.Wxxcx.Secret)
- if err != nil || tok == "" {
- global.GVA_LOG.Error("获取微信token失败!", zap.Any("err", err))
- return ""
- } else {
- global.GVA_REDIS.SetEX(context.Background(), "wxtoken", tok, exp-1000)
- return tok
- }
- }
- return tok
- }
- var defaultLetters = []rune("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")
- // RandomString returns a random string with a fixed length
- func RandomString(n int, allowedChars ...[]rune) string {
- var letters []rune
- if len(allowedChars) == 0 {
- letters = defaultLetters
- } else {
- letters = allowedChars[0]
- }
- b := make([]rune, n)
- for i := range b {
- b[i] = letters[rand.Intn(len(letters))]
- }
- return string(b)
- }
|