在hget块nodejs redis中的hdel

时间:2012-11-01 00:52:14

标签: node.js redis

我正在尝试在hget块内的node.js中执行hdel命令。这是代码:

client.hget(requests[i], "client", function(err, client){
if(isUser == true){
    client.hdel(requests[i], function(err){
          if(err){
                 console.log("cannot process request");
              }
     });
    }
});

它无法正常工作,我无法理解为什么!任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

由于您使用requests [i]作为参数,我们可以假设这个代码块被封装在一个循环中:也许您正在尝试迭代一个数组并为每个项目执行hget / hdel。

在这种情况下,您很可能遇到Javascript的范围规则:requests [i]是闭包的一部分,但闭包只能在函数级别定义(而不是在块级别)

您可能需要定义内部函数,或使用forEach迭代容器。更多信息:

nodejs, redis. check if keys exists and create new if not

For loop get items from redis delay