Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 2c713adc16 | |||
|
|
21f09ea41e |
@@ -8,7 +8,6 @@ type Base struct {
|
|||||||
BindIP string `yaml:"BindIP"` // 绑定IP
|
BindIP string `yaml:"BindIP"` // 绑定IP
|
||||||
Addr string `yaml:"Addr"`
|
Addr string `yaml:"Addr"`
|
||||||
OnMicroService bool `yaml:"OnMicroService"`
|
OnMicroService bool `yaml:"OnMicroService"`
|
||||||
LoginUrl string `yaml:"LoginUrl"`
|
|
||||||
}
|
}
|
||||||
|
|
||||||
type DBConf struct {
|
type DBConf struct {
|
||||||
|
|||||||
58
data/map_float.go
Normal file
58
data/map_float.go
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
package data
|
||||||
|
|
||||||
|
import (
|
||||||
|
"sync"
|
||||||
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
// Cache
|
||||||
|
CacheMapFloat *MapFloat
|
||||||
|
)
|
||||||
|
|
||||||
|
// lock
|
||||||
|
type MapFloat struct {
|
||||||
|
sync.RWMutex
|
||||||
|
Data map[string]float64
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewMapFloat() *MapFloat {
|
||||||
|
return &MapFloat{
|
||||||
|
Data: make(map[string]float64),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *MapFloat) All() map[string]float64 {
|
||||||
|
c.RLock()
|
||||||
|
defer c.RUnlock()
|
||||||
|
|
||||||
|
return c.Data
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *MapFloat) Get(key string) float64 {
|
||||||
|
c.RLock()
|
||||||
|
defer c.RUnlock()
|
||||||
|
|
||||||
|
vals, ok := c.Data[key]
|
||||||
|
if !ok {
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
return vals
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *MapFloat) Set(key string, val float64) {
|
||||||
|
c.Lock()
|
||||||
|
defer c.Unlock()
|
||||||
|
c.Data[key] = val
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *MapFloat) Keys() (keys []string) {
|
||||||
|
c.RLock()
|
||||||
|
defer c.RUnlock()
|
||||||
|
|
||||||
|
for k, _ := range c.Data {
|
||||||
|
keys = append(keys, k)
|
||||||
|
}
|
||||||
|
|
||||||
|
return
|
||||||
|
}
|
||||||
51
data/map_string.go
Normal file
51
data/map_string.go
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
package data
|
||||||
|
|
||||||
|
import (
|
||||||
|
"sync"
|
||||||
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
// Cache
|
||||||
|
CacheMapString *MapString
|
||||||
|
)
|
||||||
|
|
||||||
|
// lock
|
||||||
|
type MapString struct {
|
||||||
|
sync.RWMutex
|
||||||
|
Data map[string]string
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewMapString() *MapString {
|
||||||
|
return &MapString{
|
||||||
|
Data: make(map[string]string),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *MapString) Get(key string) string {
|
||||||
|
c.RLock()
|
||||||
|
defer c.RUnlock()
|
||||||
|
|
||||||
|
vals, ok := c.Data[key]
|
||||||
|
if !ok {
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
return vals
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *MapString) Set(key, val string) {
|
||||||
|
c.Lock()
|
||||||
|
defer c.Unlock()
|
||||||
|
c.Data[key] = val
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *MapString) Keys() (keys []string) {
|
||||||
|
c.RLock()
|
||||||
|
defer c.RUnlock()
|
||||||
|
|
||||||
|
for k, _ := range c.Data {
|
||||||
|
keys = append(keys, k)
|
||||||
|
}
|
||||||
|
|
||||||
|
return
|
||||||
|
}
|
||||||
@@ -2,7 +2,6 @@ package middleware
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
|
||||||
"log"
|
"log"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
@@ -33,14 +32,14 @@ func JwtAuth(redis *redis.RedisClient) gin.HandlerFunc {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 从redis 获取token,判断当前redis 是否为空
|
// 从redis 获取token,判断当前redis 是否为空
|
||||||
tokenKey := fmt.Sprintf("%d-%s-%s", claims.ID, claims.Role, "token")
|
// tokenKey := fmt.Sprintf("%d-%s-%s", claims.ID, claims.Role, "token")
|
||||||
redisToken := redis.Client.Get(redis.Ctx, tokenKey)
|
// redisToken := redis.Client.Get(redis.Ctx, tokenKey)
|
||||||
if redisToken.Val() == "" {
|
// if redisToken.Val() == "" {
|
||||||
log.Println("redis异常", "Token status unauthorized")
|
// log.Println("redis异常", "Token status unauthorized")
|
||||||
c.JSON(http.StatusUnauthorized, gin.H{"error": "Token status unauthorized"})
|
// c.JSON(http.StatusUnauthorized, gin.H{"error": "Token status unauthorized"})
|
||||||
c.Abort()
|
// c.Abort()
|
||||||
return
|
// return
|
||||||
}
|
// }
|
||||||
|
|
||||||
// 将解析后的 Token 存储到上下文中
|
// 将解析后的 Token 存储到上下文中
|
||||||
c.Set("Auth", claims)
|
c.Set("Auth", claims)
|
||||||
|
|||||||
Reference in New Issue
Block a user