有没有办法记录/查看MongoDB .save()是否真的有效?

时间:2016-09-09 07:30:25

标签: node.js mongodb express mongoose

我有一个连接到Node.js Express的MongoDB,我有一个接受POST请求的API控制器和.save()请求体到数据库。然而,即使控制台正确地记录了请求体并在.save()方法内输入,我也用mongo->db检查了终端,但仍然没有创建任何内容。

有没有办法确定MongoDB是否实际使用MongoDB .save()方法?还有我如何检查MongoDB是否正确连接到服务器?

也尝试过快速记录:

enter image description here

以下是服务器的设置方式:

const express = require('express'),
      app = express(),
      logger = require('morgan'),
      config = require('./config/main'),
      mongoose = require('mongoose'),
      bodyParser = require('body-parser'),
      router = require('./router');

mongoose.Promise = global.Promise;
mongoose.connect(config.database);

const server = app.listen(config.port);
console.log('Your server is running on port ' + config.port + '.');

app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
app.use(logger('dev'));

app.use(function(req, res, next) {
  res.header("Access-Control-Allow-Origin", "http://localhost:8080");
  res.header('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE, OPTIONS');
  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, Authorization, Access-Control-Allow-Credentials");
  res.header("Access-Control-Allow-Credentials", "true");
  next();
})

router(app);

服务器的配置:

module.exports = {
  'database': 'mongodb://localhost/testdatabase',
  'port': process.env.PORT || 3000,
  'secret': 'secretsecret',
}

编辑2

我的.save在控制器中:

  user.save(function(err, user) {
      if(err) { return next(err); }

      res.status(201).json({
        user: user
      })
    }) 

编辑3 尝试使用mongoose.set('debug', true);进行日志记录并获得以下内容:

enter image description here

1 个答案:

答案 0 :(得分:1)

您可以将mongoose设置为调试模式以查看最新情况。

mongoose.set('debug', true);
相关问题