2012-07-09 15 views
10

मैं प्रमाणित उपयोगकर्ताओं के लिए पासपोर्ट-स्थानीय रणनीति का उपयोग कर रहा हूं। मैंने जेरेड हैंनसन द्वारा दी गई मार्गदर्शिका का पालन किया और रिक ऑब्जेक्ट को फ्लैश विधि देने के लिए कनेक्ट-फ्लैश स्थापित किया।नोडजेस + पासपोर्ट + एक्सप्रेस 3.0 + कनेक्ट-फ्लैश फ्लैशिंग?

app.post('/login',        
     passport.authenticate('local', {   
      successRedirect: '/'     
     , failureRedirect: '/login'    
     , successFlash: 'Bienvenido'    
     , failureFlash: 'Credenciales no válidas'        
     })           
); 

जब उपयोगकर्ता लॉगिन विफल रहता है, इसे फिर से/लॉगिन पर रीडायरेक्ट लेकिन यह फ्लैश नहीं करता है कुछ भी:/

अद्यतन: मैं MongoDB सत्र के लिए उपयोग करती हैं इसलिए मेरा अनुरोध संचालकों में से एक निम्नलिखित है

> db.sessions.find() 
{ "_id" : "qZ2eiTnx6r9LR25JOz/TGhiJ", "session" : "{\"cookie\":{\"originalMaxAge\":null,\"expires\":null,\"httpOnly\":true,\"path\":\"/\"},\"passport\":{\"user\":\"4ffb5b5db9cc16b615000001\"},\"flash\":{\"error\":[\"Credenciales no válidas\"],\"success\":[\"Bienvenido\"]}}" } 

तो संदेशों सत्र वस्तु में डाला जाता है, लेकिन वे बाहर निकाला नहीं हैं: भंडारण और मैं इस को देखते हैं। क्या मुझे कुछ खास करना चाहिए?

उत्तर

24

मुझे लगता है कि आप संदेश खींच रहे हैं और उन्हें एक दृश्य में प्रस्तुत कर रहे हैं? कुछ ऐसा:

app.get('/login', function(req, res){ 
    res.render('login', { message: req.flash('error') }); 
}); 
+0

ठीक है! मैं वास्तव में इसे याद किया ... मैं बहुत बेवकूफ महसूस करता हूँ! धन्यवाद जेरेड! – Dredok

+3

@ जेरेड मैं इस मुद्दे पर भी अटक गया। मुझे लगता है कि यह पासपोर्ट दस्तावेज़ों में इस उदाहरण के लिए वास्तव में सहायक होगा। –

+3

हाँ मुझे भी.मुझे लगता है कि यह दस्तावेज़ों में होना अच्छा लगेगा। –