वर्तमान में मुझे मोंगो डीबी में सत्रों को स्टोर करने का प्रयास करने का समय लगता है।नोडजेएस + एक्सप्रेस + मोंगो सत्र भंडारण
मैंने एक्सप्रेस-सत्र-मोंगो और कनेक्ट-मोंगोडब की कोशिश की है और जब मैं लॉगिन पेज लोड करने का प्रयास करता हूं तो दोनों मुझे एक ही "500 आंतरिक सर्वर त्रुटि" देते हैं। जो मुझे सोचने के लिए प्रेरित करता है कि कहीं कहीं मोंगोज़-एथ के साथ एक संघर्ष है।
app.js:
var MongoStore = require('connect-mongodb');
var MongoDb = require('mongodb').Db;
var Server = require('mongodb').Server;
var db = new MongoDb('myDb', new Server('localhost', 27017, {auto_reconnect: true, native_parser: false}));
app.configure(function() {
app.use(express.logger({format: 'dev'}));
app.set('views', __dirname + '/../views');
app.set('view engine', 'jade');
app.set('view options', { layout: false });
app.use(express.bodyParser());
app.use(express.cookieParser());
app.use(mongooseAuth.middleware());
app.use(require('./mysite').middleware());
app.use(express.methodOverride());
});
app.configure('production', function(){
var oneWeek = 657450000;
app.use(express.static(__dirname + '/../public', { maxAge: oneWeek }));
app.use(express.session({ store: new MongoStore({db: db}), secret: 'super secret' }));
app.use(express.errorHandler());
});
// Routes
require('./routing.js');
mongooseAuth.helpExpress(app);
app.listen(3000);
console.log('Express server listening on port %d in %s mode', app.address().port, app.settings.env);
userModel.js
var Schema = mongoose.Schema;
var mongooseTypes = require("mongoose-types");
var mongooseAuth = require('mongoose-auth');
mongooseTypes.loadTypes(mongoose);
var everyauth = require('everyauth')
everyauth.debug = true;
var UserSchema = new Schema({any: {}});
UserSchema.plugin(mongooseAuth, {
everymodule: {
everyauth: {
User: function() {
return User;
}
}
}
, password: {
loginWith: 'email'
, extraParams: {
phone: String
, username: String
}
, everyauth: {
getLoginPath: '/login'
, postLoginPath: '/login'
, loginView: 'account/login.jade'
, getRegisterPath: '/register'
, postRegisterPath: '/register'
, registerView: 'account/register.jade'
, loginSuccessRedirect: '/login/success'
, registerSuccessRedirect: '/register/success'
}
}
});
mongoose.model('User', UserSchema);
User = mongoose.model('User');
इस समय समय में मैं वास्तव में सिर्फ कोशिश कर रहा हूँ
वैसे भी यहाँमेरी सेटअप है सत्र स्टोर के रूप में MongoDb का उपयोग करने के लिए, लेकिन फिर मुझे node.js conso में जो कुछ भी 500 त्रुटि w/कोई जानकारी नहीं मिलती जब मैं लॉगिन पेज लोड करने का प्रयास करता हूं।
किसी भी मदद की सराहना की जाएगी। कनेक्ट-सत्र-मोंगो/व्यक्त सत्र-मोंगो/कनेक्ट-मोंगो, कनेक्ट 2.0.1 का उपयोग करने और एक्सप्रेस का उपयोग कर कनेक्ट 1.8.5:
धन्यवाद
वास्तव में मैंने अभी एक्सप्रेस-सत्र-मोंगो के साथ पुनः प्रयास किया है और हालांकि मुझे अभी भी वही व्यवहार मिल रहा है (लॉगिन पृष्ठ लोड करने का प्रयास करने में 500/त्रुटि विफल हो गई है), मैंने अभी मोंगो डीबी में चेक किया है और सत्र वास्तव में है उम्मीद के रूप में वहाँ। – Lancelot
एफवाईआई ने कनेक्ट-मोंगो को भी कोशिश की, वही परिणाम ... mongoose-auth अच्छा खेल नहीं रहा? – Lancelot
कुछ औथ मॉड्यूल के कोड में खोदने के बाद, मैं यह समझने में सक्षम था कि 500 त्रुटि हरथ/lib/मॉड्यूल/password.js में हुई है >> लाइन 47: res.render (देखें, स्थानीय); दुर्भाग्यवश, जहां से मैं खड़ा हूं उससे बहुत ज्यादा मदद नहीं करता ... :( – Lancelot