javascript - express如何使用session?
問題描述
問題比較多一條一條的說,因為關系比較密切所以算是一個問題,屬于一個大問題,沒什么毛病。項目描述:
1.express項目,直接命令行初始化項目結構。2.目錄結構如上圖:3.網(wǎng)站功能:用戶注冊登錄,session驗證用戶身份。4.verify.js寫的用戶驗證邏輯。
問題1:每次的請求為什么都會改變sessionID的值?所以根本沒法給req.session添加自己的自定義值,我看了網(wǎng)上說用redis來存儲就可以了,然后用redis來做存儲。但是又出現(xiàn)了問題,verify.js里面又無法獲使用req.session.regenerate(),錯誤提示是:沒有regenerate這個property。怎么用了個redis,把一個人家本來就自帶方法搞沒了?問題2:我又在網(wǎng)上查了一下,說是因為app.js里面var session = require(’express-session’);的這個session,和verify.js里面var session = require(’express-session’);,因為require兩次,導致實際上兩個文件中的req.session不是同一個對象。這我就搞不清了,明明是操作的同一個req.session為什么會不同,試了網(wǎng)上別人回答的const session = require(’express-session’);,還是沒有解決。
這兩天快被這個session搞的暈死了,前端小白求大神解答啊,提前謝謝了!
背景補充:
1.用戶的登錄驗證完全沒有問題。 2.app.js里面的session初始化已經(jīng)放在了路由之前。
session驗證的編寫,基本參考以下的內(nèi)容:/a/11...http://www.cnblogs.com/chying...http://wiki.jikexueyuan.com/p...express-session官方文檔
問題解答
回答1:cookie-parser的signedCookie可以做簽名驗證,express-session托管了session的創(chuàng)建和存儲。
相關文章:
1. html5 - 有可以一次性把所有 css外部樣式轉為html標簽內(nèi)style=" "的方法嗎?2. javascript - 原生canvas中如何獲取到觸摸事件的canvas內(nèi)坐標?3. javascript - 如何將一個div始終固定在某個位置;無論屏幕和分辨率怎么變化;div位置始終不變4. html - vue項目中用到了elementUI問題5. python - 如何判斷爬蟲已經(jīng)成功登陸?6. javascript - 求解答:實例對象調(diào)用constructor,此時constructor內(nèi)的this的指向?7. javascript - 這不是對象字面量函數(shù)嗎?為什么要new初始化?8. javascript - vscode alt+shift+f 格式化js代碼,通不過eslint的代碼風格檢查怎么辦。。。9. javascript - 有什么比較好的網(wǎng)頁版shell前端組件?10. javascript - [js]為什么畫布里不出現(xiàn)圖片呢?在線等
