mongodb没有保存node.js的条目

时间:2015-10-07 15:34:24

标签: javascript node.js mongodb express

只是想学习node / mongo / express,所以我很新。我正在读一本书,只想尝试一些基础知识。

我在user.js中有以下代码..

var mongoose = require('mongoose')
mongoose.connect('mongodb://localhost/auth_demo');

var user = mongoose.Schema({
  username: String,
  password: String
})

module.exports = mongoose.model('User', user );

然后是server-auth.js


var User = require('./user')
var express = require('express')
var bcryptjs = require('bcryptjs')

var app = express();
app.use(require('body-parser').json());

app.post('/user', function( req, res, next ) {
  var user = new User({ username: req.body.username });
  bcryptjs.hash(req.body.password, 10, function( err, hash ) {
    user.password = hash
    console.log( err, hash, user )

    user.save( function( err, user ) {
      if( err ) { throw next( err ) }
      res.send( 201 )
    })
  })
})

当我运行node server-auth.js并输入以下命令时..

curl -X POST -d '{"username": "somename", "password" : "pass"}' -H 'Content-Type: application/json' localhost:3000/user

我可以在节点的控制台日志中看到,它显示对象很好..还说“创建了”#39;响应命令


null
$2a$10$NjymL8LT40ze6DauEDlX.OLzZMHB09uohbWuhiA0JNVLX8oTiGS1q
{ password: '$2a$10$NjymL8LT40ze6DauEDlX.OLzZMHB09uohbWuhiA0JNVLX8oTiGS1q',
  username: 'somename',
  _id: 561537693097776367ef4d87 }

所以这一切'看起来'确定。

然而,如果我然后连接到mongo,'显示dbs'显示auth_demo集合,如果我执行db.auth_demo.find()它没有显示任何内容(我尝试在mongo本地保存,那很好)?

1 个答案:

答案 0 :(得分:1)

进入mongo客户端后尝试此操作:

use auth_demo;
db.users.find();