【后端开发实习】Node.js搭建Web应用,用Redis维持session状态
// 导入所需模块
const express = require('express');
const redis = require('redis');
const session = require('express-session');
const RedisStore = require('connect-redis')(session);
// 创建Express应用
const app = express();
// 配置Redis客户端
const redisClient = redis.createClient({
host: 'localhost',
port: 6379,
no_ready_check: true // 可选,避免在初始连接时检查就绪状态
});
// 配置session中间件
app.use(session({
store: new RedisStore({ client: redisClient }),
secret: 'your_secret_key',
resave: false,
saveUninitialized: true,
cookie: { secure: true } // 仅在HTTPS中使用
}));
// 定义一个路由,用于设置session值
app.get('/set-session', (req, res) => {
req.session.username = 'JohnDoe';
res.send('Session set!');
});
// 定义一个路由,用于获取session值
app.get('/get-session', (req, res) => {
if (req.session.username) {
res.send(`Hello, ${req.session.username}!`);
} else {
res.send('No session data.');
}
});
// 监听3000端口
app.listen(3000, () => {
console.log('Server is running on port 3000.');
});
这段代码演示了如何在Node.js中使用Express框架搭建Web应用,并使用Redis来存储session状态。代码中包含了如何配置Redis客户端、设置session中间件以及定义路由来设置和获取session数据。
评论已关闭