【问题标题】:circular reference error in NodeJS/MongoDB codeNodeJS/MongoDB 代码中的循环引用错误
【发布时间】:2016-09-20 08:20:50
【问题描述】:

我正在使用 Node JS 、 Express 、 MongoDB 开发示例应用程序,并使用 NodeJS 的本机 mongodb 驱动程序从 NodeJS 访问 MongoDB。 以下是给我带来问题的部分代码。

 module.exports.getLookups = wrap(function * (req , res) {
 let users = yield getUsers();
 db.close();
 res.setHeader('Content-Type', 'application/json');
 res.send(JSON.stringify(users));
});

// get users from MEAN mongoDB
function * getUsers(){
 return db.collection("users").find({});
}

"res.send(JSON.stringify(users));"行而不是返回 json 数据,它抛出循环引用错误。 “用户”集合是一个简单的集合,记录很少。如果需要提供更多信息,请告诉我。

【问题讨论】:

    标签: node.js mongodb


    【解决方案1】:

    collection.find() 返回a Cursor。如果你想从那个游标读取所有结果,你应该在它上面调用.toArray()

    function getUsers(){
     return db.collection("users").find({}).toArray();
    }
    

    getUsers() 不必是生成器函数)

    【讨论】:

    • 是的,你是对的,getUsers 不需要是生成器。
    猜你喜欢
    • 1970-01-01
    • 2013-02-16
    • 1970-01-01
    • 2013-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多