gpt4 book ai didi

javascript - 无法通过js连接mongo db

转载 作者:太空宇宙 更新时间:2023-11-04 00:55:15 24 4
gpt4 key购买 nike

我编写了一个代码,用于将所有类型的社交网络登录与nodejs集成。这是我的 server.js

// get all the tools we need
var express = require('express');
var app = express();
var port = process.env.PORT || 8080;
var mongoose = require('mongoose');
var passport = require('passport');
var flash = require('connect-flash');

var morgan = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var session = require('express-session');

var configDB = require('./config/database.js');

// configuration ===============================================================
mongoose.connect(configDB); // connect to our database

// require('./config/passport')(passport); // pass passport for configuration

// set up our express application
app.use(morgan('dev')); // log every request to the console
app.use(cookieParser()); // read cookies (needed for auth)
app.use(bodyParser()); // get information from html forms

app.set('view engine', 'ejs'); // set up ejs for templating

// required for passport
app.use(session({ secret: '234545671290eftg5678qwer235623' })); // session secret
app.use(passport.initialize());
app.use(passport.session()); // persistent login sessions
app.use(flash()); // use connect-flash for flash messages stored in session

// routes ======================================================================
//require('./app/routes.js')(app, passport); // load our routes and pass in our app and fully configured passport

// launch ======================================================================
app.listen(port);
console.log('The magic happens on port ' + port);

config/database.js

module.exports = {

'url' : 'mongodb://localhost27017:' // looks like mongodb://<user>:<pass>@mongo.onmodulus.net:27017/Mikha4ot

};

当我运行 Node 服务器时,出现以下错误:

events.js:72
throw er; // Unhandled 'error' event
^
Error: failed to connect to [[object Object]:27017]
at null.<anonymous> (/home/ajay/Desktop/NodeAuthentication/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/server.js:555:74)
at emit (events.js:106:17)
at null.<anonymous> (/home/ajay/Desktop/NodeAuthentication/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/connection_pool.js:156:15)
at emit (events.js:98:17)
at Socket.<anonymous> (/home/ajay/Desktop/NodeAuthentication/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/connection.js:534:10)
at Socket.emit (events.js:95:17)
at net.js:834:16
at process._tickCallback (node.js:448:13)

我对这两行感到困惑:

var configDB = require('./config/database.js');  

mongoose.connect(configDB); // connect to our database  

我应该使用

mongoose.connect(configDB.url); ??

我该如何解决这个问题?

最佳答案

config/database.js 中存在拼写错误。您未指定数据库名称,并且冒号必须位于 localhost27017 之间:

module.exports = {
'url' : 'mongodb://localhost:27017/my-test-db' // looks like mongodb://<user>:<pass>@mongo.onmodulus.net:27017/Mikha4ot
};

在连接方法中,您可以放置​​对象或字符串,因此您应该按照问题中的建议使用它:

mongoose.connect(configDB.url);

关于javascript - 无法通过js连接mongo db,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30143305/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com