我使用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的新手,所以请帮助我,谢谢
答案 0 :(得分:0)
首先,您似乎没有安装kerberos。请运行npm install kerberos。 这一行
Can't set headers after they're sent
建议您在将响应发送回客户端之后尝试修改/发送响应,这是您获得的错误。
答案 1 :(得分:0)
最后它现在正在工作,但它与'kerberos'无关,它是我使用错误的方式导出我的module.terminal仍然记录我'kerberos undefined'但网络可以工作,我想也许有一段时间我将试图解决这个问题。谢谢你的关注