mongoose.connect дает ошибку в nodejs

Я использую узел для подключения к базе данных mongoose, но когда я запускаю код, он выдает ошибку как:

Uncaught TypeError: undefined is not a function
  (anonymous function)  server.js:13

Ниже приведен код, который я запускаю в server.js

var express= require(['express']);
var bodyParser = require(['body-parser']);
var cookieParser = require(['cookie-parser']);
var expressSession = require(['express-session']);
var mongoose = require(['mongoose']);

var mongoStore = require(['connect-mongo'])({session: expressSession});
require(['./models/users.js']);
mongoose.connect('mongodb://localhost/userregistration');
var app = express();
app.engine('.html', require('ejs').__express);
app.set('views',__dirname + '/views');
app.set('view engine','html');

app.use(bodyParser());
app.use(cookieParser());
app.use(expressSession({
    secret: 'SECRET',
    cookie: {maxAge:60*60*1000 },
    store: new mongoStore({
        db: mongoose.connection.db,
        collection: 'sessions'
    })

}));

require('./routes')(app);
app.listen(80);

просматривая логи, код выдает ошибку по адресу:

mongoose.connect('mongodb://localhost/userregistration');

3 ответа

Я думаю, что вы забыли потребовать экспресс-сессию.

Вот пример

ExpressSession

app.use(express.session({
  secret: 'SECRET',
  cookie: {maxAge:60*60*1000 },
  store: new mongoStore({
    db: mongoose.connection.db,
    collection: 'sessions'
  })
}));

connect-mongo имеет специальную опцию для использования подключений Mongoose, попробуйте использовать это:

store: new mongoStore({
    mongoose_connection: mongoose.connection,
    collection: 'sessions'
})

Если это не помогает, пожалуйста, опубликуйте дополнительную информацию (например, полную трассировку стека и фактический код, который вы выполняете, поскольку requireне выглядит правильно).

// Replace 'db' by  'mongooseConnection '

app.use(expressSession({
secret: 'SECRET',
cookie: {maxAge: 60 * 60 * 1000},
store: new mongoStore({
    mongooseConnection: mongoose.connection,
    collection: 'sessions'
  })
}));
Другие вопросы по тегам