鍍金池/ 問答/Linux  網(wǎng)絡(luò)安全  HTML/ express-session sessionid不能維持,固定sessioni

express-session sessionid不能維持,固定sessionid情況下設(shè)置成功取值失敗

express應(yīng)用,加載了express-session中間件,不管使用redis還是file還是默認(rèn)的內(nèi)存session,都無法保持session回話,刷新網(wǎng)頁后的sessionid都會發(fā)生變化,通過genid回調(diào)設(shè)定sessionid固定后依然沒法獲取上個請求設(shè)置的session參數(shù)值

app.set('trust proxy', 1) // trust first proxy
        // app.use(cookieParser())
        app.use(session({
            name:global.APP_NAME||"n2hws",
            rolling:true,
            secret: 'keyboard cat',  // 用來對session id相關(guān)的cookie進(jìn)行簽名
            store: session_store,  // 本地存儲session(文本文件,也可以選擇其他store,比如redis的)
            saveUninitialized: true,  // 是否自動保存未初始化的會話,建議false
            resave: false,  // 是否每次都重新保存會話,建議false
            cookie: {
                // maxAge: 10 * 1000,  // 有效期,單位是毫秒
                secure: true,
                path:'/'
            },
            // genid: function(req) {
            //     return 1 // use UUIDs for session IDs
            // },
        }))
        app.listen(port,host)

求大神解答問題所在,已經(jīng)卡住三天了,查了很多資料,沒有相關(guān)描述。

回答
編輯回答
愛是癌

你好

  • 首先為了觀察方便,先使用redis

  • 然后抓請求觀察sid(express-session默認(rèn)是connect_sid)

  • 觀察redis存儲session情況,和前端是否匹配

2017年1月22日 21:30