nodejs表示mongoose连接到db错误

时间:2016-02-11 08:10:26

标签: javascript node.js mongodb express

我使用nodejs express和mongoose来连接mongodb,我在根文件夹中创建了一个config.js.我正在尝试在db.js中导出db connect并尝试在adminController.js中导入

但是当我运行服务器并刷新浏览器时,它会记录一些错误,而不是记录我的登录终端。

config.js

module.exports = {
    cookieScret:'ThreeKingdoms',
    db:'threekingdoms',
    host:'localhost',
    port:27017
}

db.js

var mongoose = require('mongoose'),
        config = require('../config'),
        connection = mongoose.connection;


    module.exports = function(mongoose){
        return mongoose.connect('mongodb://'+config.host+'/'+config.db);
    }

adminController.js

var express = require('express'),
        router = express.Router(),
        mongoose = require('mongoose'),
        mainInfo = require('../models/admin'),
        db = require('../models/db');

    router.get('/', function(req, res) {
        res.render('admin', { title: 'hey im here!how are you' });
        db.on('error',console.error.bind(console, 'connection error:'));
        db.once('open', function() {
            console.log(db)
        });
        console.log(db)
    });

    router.post('/',function(req,res,next){
        //console.log(req.body)
        var mainInfo = mongoose.model('mainInfo');
    })

    module.exports = router;

question files is in red box terminal error

我是nodejs的新手,所以请帮助我,谢谢

2 个答案:

答案 0 :(得分:0)

首先,您似乎没有安装kerberos。请运行npm install kerberos。 这一行

Can't set headers after they're sent

建议您在将响应发送回客户端之后尝试修改/发送响应,这是您获得的错误。

答案 1 :(得分:0)

最后它现在正在工作,但它与'kerberos'无关,它是我使用错误的方式导出我的module.terminal仍然记录我'kerberos undefined'但网络可以工作,我想也许有一段时间我将试图解决这个问题。谢谢你的关注