0
代码的Sample-无法连接到数据库mongolab
const express=require('express'),
http=require('http'),
handlebars=require('express-handlebars').create({defaultLayout:'main'}),
fs=require('fs'),
mongoose=require('mongoose'),
uriUtil = require('mongodb-uri'),
credentials=require('./credentials.js'),
bodyParser=require('body-parser');
//connect to databse
var mongooptions = {
server: {
poolSize:5,
socketOptions: { keepAlive: 1, connectTimeoutMS: 30000 } },
replset: { socketOptions: { keepAlive: 1, connectTimeoutMS : 30000 }
},
};
var mongodbUri=("mongodb://user:[email protected]:29831/project");
var mongooseUri=uriUtil.formatMongoose(mongodbUri);
mongoose.connect(mongooseUri,mongooptions);
var conn=mongoose.connection;
conn.on('error',function(err){
console.log(err.message);
});
conn.on('connection',function() {
var app=express();
app.set('port',process.env.PORT);
app.engine('handlebars',handlebars.engine);
app.set('view engine','handlebars');
app.use(express.static('./public'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: true}));
app.use(require('express-session')({
secret: 'intro skill',
resave: false,
saveUninitialized: false,
cookie: {maxAge:900000}
}));
var userSchema=new mongoose.Schema({
username: String,
password: String,
email : String
});
var user=mongoose.model('users',userSchema);
//routing
function startServer(){
http.createServer(app).listen(app.get('port'),function(){
console.log("Server Started at port "+app.get('port'));
});
}
if(require.main===module){
startServer();
}
else{
module.exports=startServer;
}
});
这是我的node.js中的代码我使用mongolab作为mongodb。
我在云9上运行应用程序。
当我使用猫鼬连接到数据库时,它会抛出错误,因为未能连接到1%40ds029831.mongolab.com:29831。
应用程序正在连接到mongolab并进行身份验证(这是成功的)后,它显示此错误。 请帮我这个。
谢谢你的工作:) – user189750
太棒了。谢谢兄弟 –
你先生是天才。非常感谢。我一直试图找出最后4个小时,但没有运气。很高兴我发现这个答案:) –