Arrays Json;如何将MongoDB型号的res阵列返回路由器';s.get,作为json?(节点js)

Arrays Json;如何将MongoDB型号的res阵列返回路由器';s.get,作为json?(节点js),arrays,node.js,json,mongodb,Arrays,Node.js,Json,Mongodb,根据我的模型,我可以成功地连接、查询并从数据库中找到我想要的所有文件 但我还不能把它们作为JSON返回。。。所以我的问题是,如何返回以下结果(console.log of res): 为我的get请求导入JSON 为简洁起见,我的模型剪下了大多数变量: const fileSchema = new mongoose.Schema({ fileName: { type: String }, versionData: [ { versionID: { type: Num

根据我的模型,我可以成功地连接、查询并从数据库中找到我想要的所有文件

但我还不能把它们作为JSON返回。。。所以我的问题是,如何返回以下结果(console.log of res):

为我的get请求导入JSON

为简洁起见,我的模型剪下了大多数变量:

const fileSchema = new mongoose.Schema({
  fileName: { type: String },
  versionData: [
    {
      versionID: { type: Number, required: false
    }
  ]
});
这是我的主代码,我试图将res作为JSON返回,以便正确处理Get请求并显示结果。我尝试返回JSON.stringify(res),但这似乎不起作用

// Controller code
findAll = function() {
  File.find({}, function(err, res) {
    if (err) console.log(err);
    else {
      // Res is populated successfully
      console.log(res);
      return res.json(); // JSON.stringify(res)
    }
  });
};
路由器:

// Return all results
router.get("/findAll", ctrlFile.findAll);

谢谢你

嘿,我通过更改以下内容来实现这一点:

findAll = function() {
  File.find({}, function(err, res) {
    if (err) console.log(err);
    else {
      return res.json();
    }
  });
};
致:


所以你得到的“res”是一个有效的对象数组,对吗?findAll函数是您的请求处理程序吗?您是否尝试运行服务器,是否出现错误,或者您的get路由根本没有响应?请尝试以下操作:return res.json({result});嘿,谢谢你们的回复,伙计们。是的,res是一个有效数组,findAll是我的请求处理程序。数组被正确地返回,当我在类似Postman的东西上获得路由时,在我的服务器上,我最终会出现一个类似以下的错误:Code:return res.json({result})和错误:
TypeError:res.json不是函数
findAll = (req, res) => {
  File.find({}, function(err, result) {
    if (err) console.log(err);
    else {
      return res.json({ result });
    }
  });
};