Node.js 如何使用从mongodb返回的数据而不是返回数据

Node.js 如何使用从mongodb返回的数据而不是返回数据,node.js,mongodb,api,Node.js,Mongodb,Api,我希望在通过api返回数据之前,先处理从mongodb检索到的数据 我的api请求如下: .get('/users', function(req, res){ var users = []; User.find({}, function(err, data){ if(err) res.send(err); users = data; } // here I want to do some things with the users

我希望在通过api返回数据之前,先处理从mongodb检索到的数据

我的api请求如下:

.get('/users', function(req, res){
    var users = [];
    User.find({}, function(err, data){
        if(err) res.send(err);
        users = data;
    }

    // here I want to do some things with the users

    res.json(users);
}
但是,用户没有定义。。。 我的猜测是,在响应返回到有效填充“用户”之前,代码向前运行 什么是等待变量被填充才能使用内容的正确方法? 或者这不是一个等待的母亲,而是一个不同的错误

User.find({}, function(err, data){
        if(err) res.send(err);
        users = data;
    }
上面的代码将异步运行,所以您希望在其完成之前得到结果

因此,请尝试以下方法:

    .get('/users', function(req, res){
        var users = [];
        User.find({}, function(err, data){
            if(err) res.send(err);
            users = data;

         //  do some things with the users

        res.json(users);
        }    
}

我知道这将是一个重复的问题,但我不知道该找什么。。。(没有ID,这是同步的…)