RT,登录页面中提交请求
对应的路由处理
我把从数据库里取出来的account信息放到了session中,然后返回成功状态和一个重定向url,然后在action中直接用window.location.href = redirecurl
来跳转,服务端能收到get请求,但是req.session
中得account信息却丢失了,这是为什么???
巴扎黑2017-04-17 12:11:08
這一express中預設的session對應的cookie名稱是一個固定值,如果你在一個網域上部署了多個express應用,但是沒有設定session的cookie名稱,就會互相衝突,所以還是設定一下:
app.use(session({
secret: '这里是加密参数',
key:'session对应的cookie名称',
resave: false,
saveUninitialized: true
})
);
上面的範例是基於express4.0給出的
伊谢尔伦2017-04-17 12:11:08
很明顯是session id遺失了。推測應該是沒有更新http response的頭部的set cookie屬性,導致session id沒有回傳給客戶端。抓包包看看服務端在發送重定向回應的時候有沒有把session id也放到response的頭部。然後再看客戶端在重定向再請求服務端的時候有沒有把session id帶上去