我的前端頁面放在ngnix里面,埠是80
我的后臺是用nodejs寫的,埠是3060,
現在我在登陸頁面進行登陸,請求http://www.xinlizhiyouni.com:80/test/user/login介面,然后將資料保存到nodejs的session中,然后跳轉到http://www.xinlizhiyouni.com:80/advertise/add.html請求http://www.xinlizhiyouni.com:80/test/user/logout介面,但是此時session資料為undefined,請問為什么我的session資料丟失了,怎么才能正確在session中保留資料,然后跳轉后不丟失
let identityKey = 'superKey';
app.use(cookieParser());
app.use(session({
name: identityKey,
secret: 'heart', // 用來對session id相關的cookie進行簽名
cookie: {maxAge: 60000},
resave: false
}));
//設定跨域訪問
app.all('*', function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "X-Requested-With");
res.header("Access-Control-Allow-Methods","PUT,POST,GET,DELETE,OPTIONS");
res.header("X-Powered-By",' 3.2.1');
res.header("Content-Type", "application/json;charset=utf-8");
next();
});
app.all('/', function(req, res, next){
let sess = req.session;
let loginUser = sess.loginUser;
let isLogined = !!loginUser;
});
// 登錄介面
app.all('/test/user/login', function(req, res, next){
let sess = req.session;
let user = {
"name": req.body.name
};
console.log("登陸介面測驗");
sess.loginUser = user.name;
res.setHeader("Set-Cookie", ["sid=1;path=/;domain=w;expires="+new Date("2030") ]);
res.json({ret_code: 0, ret_msg: '登錄成功'});
});
app.all('/test/user/logout', function(req, res, next){
let sess = req.session;
let loginUser = sess.loginUser;
console.log("測驗登出介面");
console.log(loginUser);
});
uj5u.com熱心網友回復:
請問樓主問題解決了嗎?我也是出現了這樣的問題,一個路由下存session,另一個路由取出session就是undefined了。樓主是如何解決的啊?uj5u.com熱心網友回復:
可以把session保存到localStorage中或資料庫中uj5u.com熱心網友回復:
你把你過期時間設定長點,太短了。轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/74005.html
標籤:JavaScript
下一篇:減去與另一變數相同的元素???
