在 Express/Node.js 中创建 flash 消息,你需要使用一个名为 connect-flash
的中间件
express
和 connect-flash
。如果尚未安装,可以使用以下命令安装它们:npm install express connect-flash
connect-flash
中间件:const express = require('express');
const session = require('express-session');
const flash = require('connect-flash');
const app = express();
// 设置 session 中间件
app.use(session({
secret: 'your-secret-key', // 用于签名 session ID 的 cookie 的密钥
resave: false, // 强制保存 session,即使它没有变化
saveUninitialized: false // 强制将未初始化的 session 存储
}));
// 设置 flash 中间件
app.use(flash());
app.get('/set-flash-message', (req, res) => {
req.flash('success', '这是一条成功消息');
res.redirect('/get-flash-message');
});
app.get('/get-flash-message', (req, res) => {
const successMessage = req.flash('success');
res.send(`成功消息:${successMessage}`);
});
<!-- EJS 示例 -->
<!DOCTYPE html>
<html>
<head>
<title>获取 Flash 消息</title>
</head>
<body>
<% if (messages.success) { %>
<div class="alert alert-success">
<%= messages.success %>
</div>
<% } %>
</body>
</html>
现在,当用户访问 /set-flash-message
路由时,他们将看到提示设置成功消息的页面。当他们访问 /get-flash-message
时,他们将看到在 /set-flash-message
路由中设置的闪现消息。
领取专属 10元无门槛券
手把手带您无忧上云