req.flash 无法使用 res.redirect
req.flash not working with the res.redirect
我对 node 和 express 世界有些陌生,所以请原谅我的任何 nobe 错误,我有几个方法在我使用类似的方法后返回 500。
req.flash('success', 'your password has been successfully changed.');
res.redirect('/user-profile');
我也试过用它发送状态
res.redirect(302,'/user-profile');
但也没有成功
并且当我尝试重新加载页面时它工作正常(第二次尝试),但是如果我评论 req.flash 一切都开始正常工作,似乎它在工作时引起了问题与我正在使用它的其他方法一样好
req.flash('success', 'You are logged out');
res.redirect('/login');
我的 index.js 文件中的代码
const express = require('express');
const router = express.Router();
const fs = require('fs');
const bcrypt = require('bcryptjs');
const app = require('../app');
const User = require('../model/user');
const passport = require('passport');
let path = require('path');
router.get('/user-profile', (req,res,next) => {
res.render('profile',{
title: 'Profile'
});
});
router.get('/logout', (req,res,next) => {
req.logout();
req.flash('success', 'You are logged out');
res.redirect('/login');
});
我的代码 app.js
// Express Messages Middleware
app.use(require('connect-flash')());
app.use(function (req, res, next) {
res.locals.messages = require('express-messages')(req, res);
next();
});
我试图在网上找到解决方案,但无法正常工作。我真的很难调试任何帮助将不胜感激。
很久以前就解决了我的错误,以防其他人面临同样的问题 problem.Here 就是答案。我的单个 ejs 文件中有 <%- messages() %> 的副本,这导致了最终导致应用程序崩溃的问题。
我对 node 和 express 世界有些陌生,所以请原谅我的任何 nobe 错误,我有几个方法在我使用类似的方法后返回 500。
req.flash('success', 'your password has been successfully changed.');
res.redirect('/user-profile');
我也试过用它发送状态
res.redirect(302,'/user-profile');
但也没有成功
并且当我尝试重新加载页面时它工作正常(第二次尝试),但是如果我评论 req.flash 一切都开始正常工作,似乎它在工作时引起了问题与我正在使用它的其他方法一样好
req.flash('success', 'You are logged out');
res.redirect('/login');
我的 index.js 文件中的代码
const express = require('express');
const router = express.Router();
const fs = require('fs');
const bcrypt = require('bcryptjs');
const app = require('../app');
const User = require('../model/user');
const passport = require('passport');
let path = require('path');
router.get('/user-profile', (req,res,next) => {
res.render('profile',{
title: 'Profile'
});
});
router.get('/logout', (req,res,next) => {
req.logout();
req.flash('success', 'You are logged out');
res.redirect('/login');
});
我的代码 app.js
// Express Messages Middleware
app.use(require('connect-flash')());
app.use(function (req, res, next) {
res.locals.messages = require('express-messages')(req, res);
next();
});
我试图在网上找到解决方案,但无法正常工作。我真的很难调试任何帮助将不胜感激。
很久以前就解决了我的错误,以防其他人面临同样的问题 problem.Here 就是答案。我的单个 ejs 文件中有 <%- messages() %> 的副本,这导致了最终导致应用程序崩溃的问题。