一尘不染

猫鼬.find()方法导致请求挂起

node.js

我已经定义了此路由,但是对它的任何请求都会卡在“待处理”中并永远运行。

当我记录代码时,我看到1后面跟着4,这意味着find方法中的代码永远不会执行

  # Calendar routes
  router.get '/calendars', (req, res) ->
    console.log '1'
    Calendar.find (err, calendars) ->
      console.log "2" + err
      console.log "3" + calendars
      res.send(err) if err
      res.json(calendars)
      return
    console.log '4'
    return

模型

mongoose = require("mongoose")

module.exports = mongoose.model("Calendar",
  name: String
)

关于这是为什么的任何想法?


阅读 212

收藏
2020-07-07

共1个答案

一尘不染

在您致电之前mongoose.connect,您的猫鼬查询只会简单地排队。

在启动代码中添加如下代码以进行连接:

mongoose.connect('mongodb://localhost/test', function(err) {
    if (err) {
        console.err(err);
    } else {
        console.log('Connected');
    }    
});

在连接字符串中,用test数据库名称替换。

2020-07-07