我正在構建一個簡單的SPA,使用MEAN堆棧和Passportjs進行身份驗證,用戶可以在其中創建,查看和回答投票。頁面路由通過角度和$ routeProvider完成。 api要求創建/管理民意調查,註冊/登錄調用通過快速路由完成。這一切都正常,我可以創建一個用戶,我也可以登錄,但是現在我遇到了登錄或註冊失敗時由護照生成的Flash消息的問題。使用帶有角度路由的Flash消息
我在我的passport.js文件中將消息分配給req.flash,但我找不到如何將這些消息發送給客戶端以及如何接收和顯示它們。所有的例子和Q &我發現只使用express路由和模板作爲ejs。我對他們沒有任何反應,但我寧願不要在可能的情況下使用它們。
這裏的一些片段:
return語句在註冊功能時找到的電子郵件已經存在:通過快遞
return done(null, false, req.flash('signupMessage', 'That email is already taken.'));
註冊路由DOEN。重定向工作正常,我可以看到用戶在DB:
app.post('/signup', passport.authenticate('local-signup', {
successRedirect : '/',
failureRedirect : '/signup',
failureFlash: true
}));
如果我只用快遞路由和我使用EJS我可以實現這個片段 - 但我寧願不要。問題是:這是什麼替代?我如何將req.flash中設置的消息發送給客戶端,以及如何檢索它們?
app.get('/signup', function(req, res) {
// render the page and pass in any flash data if it exists
res.render('signup.ejs', { message: req.flash('signupMessage') });
});
老類似的問題(我用完全相同的教程),但仍然沒有答案。 http://stackoverflow.com/questions/25464798/how-to-get-equivalent-of-req-something-from-in-angular-with-nodejs – NicolaF