node.js - Nodejs Redis hdel 不会删除密钥
问题描述
我真的被难住了,希望有人能帮忙。
我有一个非常基本的 redis 应用程序,它使用 hset 和一个键。当我去删除密钥时
myRedis.hdel(房间,mysocket,功能(错误,响应){
})
它将从响应中返回 1,告诉我它已将其删除。看着它,虽然钥匙还在吗?
奇怪的是,当我明确放置 id 时,它会起作用,所以如果我做类似的事情
myRedis.hdel(room,"key",function(err,response){
})
它删除了它,但是通过变量执行它是不行的。知道会发生什么吗?我试过用引号等包裹它,但仍然没有骰子。
解决方案
所以看起来redis对键名有点挑剔。我使用从 socket.io 随机生成的 socket.id 作为键。一旦我将“socket-”附加到redis中每个键的前面,它就开始工作了..
不确定这是否记录在任何地方,但似乎解决了我的问题。