|
@@ -91,10 +91,12 @@ func (store *redisStore) Del(id Id, keys ...string) bool {
|
|
|
defer lock(id).Unlock()
|
|
|
bs, err := redis.GetBytes("session", string(id))
|
|
|
if err != nil {
|
|
|
- return true
|
|
|
+ return false
|
|
|
}
|
|
|
var userdata map[string]interface{}
|
|
|
- json.Unmarshal(*bs, &userdata)
|
|
|
+ if json.Unmarshal(*bs, &userdata) != nil {
|
|
|
+ return false
|
|
|
+ }
|
|
|
for _, key := range keys {
|
|
|
delete(userdata, key)
|
|
|
}
|
|
@@ -103,8 +105,10 @@ func (store *redisStore) Del(id Id, keys ...string) bool {
|
|
|
timeout = RedisNotLoginExpire
|
|
|
}
|
|
|
putdata, _ := json.Marshal(userdata)
|
|
|
- redis.PutBytes("session", string(id), &putdata, timeout)
|
|
|
- return true
|
|
|
+ if redis.PutBytes("session", string(id), &putdata, timeout) == nil {
|
|
|
+ return true
|
|
|
+ }
|
|
|
+ return false
|
|
|
}
|
|
|
|
|
|
//根据自定义字段,更新
|
|
@@ -116,15 +120,19 @@ func (store *redisStore) UpdateByCustomField(findkey string, findvalue interface
|
|
|
return false
|
|
|
}
|
|
|
var data map[string]interface{}
|
|
|
- json.Unmarshal(*bs, &data)
|
|
|
+ if json.Unmarshal(*bs, &data) != nil {
|
|
|
+ return false
|
|
|
+ }
|
|
|
timeout := int(store.maxAge.Seconds())
|
|
|
if RedisNotLoginKey != "" && data[RedisNotLoginKey] == nil {
|
|
|
timeout = RedisNotLoginExpire
|
|
|
}
|
|
|
data[setkey] = setvalue
|
|
|
putdata, _ := json.Marshal(data)
|
|
|
- redis.PutBytes("session", findkey, &putdata, timeout)
|
|
|
- return true
|
|
|
+ if redis.PutBytes("session", findkey, &putdata, timeout) == nil {
|
|
|
+ return true
|
|
|
+ }
|
|
|
+ return false
|
|
|
}
|
|
|
|
|
|
func (store *redisStore) Exist(id Id) bool {
|
|
@@ -137,8 +145,7 @@ func (store *redisStore) Exist(id Id) bool {
|
|
|
func (store *redisStore) Clear(id Id) bool {
|
|
|
lock(id).Lock()
|
|
|
defer lock(id).Unlock()
|
|
|
- redis.Del("session", string(id))
|
|
|
- return true
|
|
|
+ return redis.Del("session", string(id))
|
|
|
}
|
|
|
|
|
|
func (store *redisStore) Run() error {
|