我用的是ExpressJS和猫鼬。
var MongoStore = require('connect-mongo')(express);
var sessionStore = new MongoStore({db: 'myappsession'});
app.use(express.session({ secret: "myappsecret", store:sessionStore }));这会导致一个"MongoError: Error:未经授权的db“。我想我需要把我的登入凭证传递给它。我也有,
var mongoose = require('mongoose');
var db = mongoose.createConnection('<omitted username, password and address>', 'myappsession');我猜连接-芒戈需要这些信息来登录到我的数据库来创建会话存储?
问题
我如何传递连接-蒙戈登录信息?还是我做错了?
发布于 2012-09-23 17:43:38
在我的例子中,由于我已经在积极地使用“猫鼬”,所以我最终使用了“猫鼬”的解决方案。
1.安装会话-猫鼬
https://github.com/donpark/session-mongoose
2.使用本教程作为指南.
Sessions
3.特别是,我对教程的这一行有问题.
url: "mongodb://localhost/mv"应该是这样的,
url: "username:password@url/testdatabase"然后,会话存储在集合“会话”中的名为“testdatabase”的数据库中。
我希望这个答案能帮助人们避免一些挫折。:)
发布于 2012-09-23 17:35:04
您需要使用MongoDB URI。看看这里的文档:http://www.mongodb.org/display/DOCS/Connections
mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]因此,考虑到您正在连接到单个服务器,只需使用:
mongoose.createConnection('mongodb://[username:password@]host1[:port1]', 'myappsession');https://stackoverflow.com/questions/12554480
复制相似问题