node.js redis 异步调用

约翰

我正在像这样的 foo 循环中使用 redis 从我的数据库中获取数据。

client.smembers(user_key, function(err, reply) {
      console.log("1");
      for(var i=0; i < reply.length; i++) {
        console.log("2");
        client.hgetall(reply[i], function(error, object) {
            console.log("3");
            // Do stuff
        });
      }
      console.log("4");
});

问题是 redis 是异步的,而且 foo 循环不会等待 redis 完成获取数据。因此,举例来说,如果reply["user_1", "user_2"]这将是输出:

1
2
2
4
3

如何强制循环等待 redis?

EMX

使用下划线:: each()

const _ = require('underscore')
client.smembers(user_key, function(err, reply) {
  _.each(reply,function(element, index){
     client.hgetall(element, function(error, object) {
        // Do stuff
     })
  })
})

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Node.js /使Redis异步调用

来自分类Dev

递归,Node js和异步调用

来自分类Dev

Node.js杀死异步调用

来自分类Dev

Node.js的异步调用和递归

来自分类Dev

AngularJS和Node.js的异步调用

来自分类Dev

如何在Node.js中通过异步调用重用测试功能?

来自分类Dev

Node.js并行异步调用,但具有优先级

来自分类Dev

Node.js:从内部带有异步调用的函数返回值

来自分类Dev

使Node.js退出,无论本地模块异步调用是否挂起

来自分类Dev

Node.js:通过异步调用顺序完全执行Websocket响应

来自分类Dev

使用sequelize对MySQL的Node.js和异步调用阻止了其他用户

来自分类Dev

Node.js:从内部带有异步调用的函数返回值

来自分类Dev

Node.js 使用 Promise.all 返回异步调用?

来自分类Dev

StackExchange.Redis异步调用挂起

来自分类Dev

JS(node.js)-如果我进行异步调用但不等待其完成,是否可以保证完成执行?

来自分类Dev

JS(node.js)-如果我进行异步调用但不等待其完成,是否可以保证完成执行?

来自分类Dev

在node.js中迭代大量异步调用/结果(使用ES6 / async / bluebird / generators)?

来自分类Dev

在node.js中同步调用

来自分类Dev

在node.js中正确放置具有多个异步redis调用的回调

来自分类Dev

在node.js中正确放置具有多个异步redis调用的回调

来自分类Dev

如何使用Lettuce和Redis异步调用Geo命令

来自分类Dev

节点JS异步映射是同步或异步调用

来自分类Dev

node.js上的redis是同步还是异步?

来自分类Dev

使用Node.js异步请求在Redis中进行循环

来自分类Dev

使用Node.js异步请求在Redis中进行循环

来自分类Dev

如何使用Express和Node进行异步调用

来自分类Dev

使用Promise重写Node.js中的Redis调用

来自分类Dev

angular.js ui +引导程序提前+异步调用

来自分类Dev

如何使用JS Promise处理异步调用?

Related 相关文章

  1. 1

    Node.js /使Redis异步调用

  2. 2

    递归,Node js和异步调用

  3. 3

    Node.js杀死异步调用

  4. 4

    Node.js的异步调用和递归

  5. 5

    AngularJS和Node.js的异步调用

  6. 6

    如何在Node.js中通过异步调用重用测试功能?

  7. 7

    Node.js并行异步调用,但具有优先级

  8. 8

    Node.js:从内部带有异步调用的函数返回值

  9. 9

    使Node.js退出,无论本地模块异步调用是否挂起

  10. 10

    Node.js:通过异步调用顺序完全执行Websocket响应

  11. 11

    使用sequelize对MySQL的Node.js和异步调用阻止了其他用户

  12. 12

    Node.js:从内部带有异步调用的函数返回值

  13. 13

    Node.js 使用 Promise.all 返回异步调用?

  14. 14

    StackExchange.Redis异步调用挂起

  15. 15

    JS(node.js)-如果我进行异步调用但不等待其完成,是否可以保证完成执行?

  16. 16

    JS(node.js)-如果我进行异步调用但不等待其完成,是否可以保证完成执行?

  17. 17

    在node.js中迭代大量异步调用/结果(使用ES6 / async / bluebird / generators)?

  18. 18

    在node.js中同步调用

  19. 19

    在node.js中正确放置具有多个异步redis调用的回调

  20. 20

    在node.js中正确放置具有多个异步redis调用的回调

  21. 21

    如何使用Lettuce和Redis异步调用Geo命令

  22. 22

    节点JS异步映射是同步或异步调用

  23. 23

    node.js上的redis是同步还是异步?

  24. 24

    使用Node.js异步请求在Redis中进行循环

  25. 25

    使用Node.js异步请求在Redis中进行循环

  26. 26

    如何使用Express和Node进行异步调用

  27. 27

    使用Promise重写Node.js中的Redis调用

  28. 28

    angular.js ui +引导程序提前+异步调用

  29. 29

    如何使用JS Promise处理异步调用?

热门标签

归档