diff --git a/redis.go b/redis.go index add88f1..1d2e5b8 100644 --- a/redis.go +++ b/redis.go @@ -312,11 +312,13 @@ func (rh *RedisonHandler) JSONStrLen(key, path string) (res []int64, err error) } func (rh *RedisonHandler) JSONArrAppend(key, path string, values ...any) (int64, error) { - args := []any{ + args := appendArgs[any]([]any{ "JSON.ARRAPPEND", key, path, - } + }, values...) + + args = append(args, values...) resp, err := rh.Do(rh.ctx, args...).Result() if err != nil { return 0, err diff --git a/wshandler/wshandler.go b/wshandler/wshandler.go index 4eeafce..18d1cf0 100644 --- a/wshandler/wshandler.go +++ b/wshandler/wshandler.go @@ -134,6 +134,13 @@ func NewWebsocketHandler(consumer session.Consumer, redisUrl string) (*Websocket logger.Println("send_msg_queue_elem sender recover :", r, string(elem.msg)) } }() + if elem == nil { + return + } + if elem.to == nil { + return + } + elem.to.WriteMessage(elem.mt, elem.msg) }