javascript - express如何使用session?
問(wèn)題描述
問(wèn)題比較多一條一條的說(shuō),因?yàn)殛P(guān)系比較密切所以算是一個(gè)問(wèn)題,屬于一個(gè)大問(wèn)題,沒(méi)什么毛病。項(xiàng)目描述:
1.express項(xiàng)目,直接命令行初始化項(xiàng)目結(jié)構(gòu)。2.目錄結(jié)構(gòu)如上圖:3.網(wǎng)站功能:用戶注冊(cè)登錄,session驗(yàn)證用戶身份。4.verify.js寫的用戶驗(yàn)證邏輯。
問(wèn)題1:每次的請(qǐng)求為什么都會(huì)改變sessionID的值?所以根本沒(méi)法給req.session添加自己的自定義值,我看了網(wǎng)上說(shuō)用redis來(lái)存儲(chǔ)就可以了,然后用redis來(lái)做存儲(chǔ)。但是又出現(xiàn)了問(wèn)題,verify.js里面又無(wú)法獲使用req.session.regenerate(),錯(cuò)誤提示是:沒(méi)有regenerate這個(gè)property。怎么用了個(gè)redis,把一個(gè)人家本來(lái)就自帶方法搞沒(méi)了?問(wèn)題2:我又在網(wǎng)上查了一下,說(shuō)是因?yàn)閍pp.js里面var session = require(’express-session’);的這個(gè)session,和verify.js里面var session = require(’express-session’);,因?yàn)閞equire兩次,導(dǎo)致實(shí)際上兩個(gè)文件中的req.session不是同一個(gè)對(duì)象。這我就搞不清了,明明是操作的同一個(gè)req.session為什么會(huì)不同,試了網(wǎng)上別人回答的const session = require(’express-session’);,還是沒(méi)有解決。
這兩天快被這個(gè)session搞的暈死了,前端小白求大神解答啊,提前謝謝了!
背景補(bǔ)充:
1.用戶的登錄驗(yàn)證完全沒(méi)有問(wèn)題。 2.app.js里面的session初始化已經(jīng)放在了路由之前。
session驗(yàn)證的編寫,基本參考以下的內(nèi)容:/a/11...http://www.cnblogs.com/chying...http://wiki.jikexueyuan.com/p...express-session官方文檔
問(wèn)題解答
回答1:cookie-parser的signedCookie可以做簽名驗(yàn)證,express-session托管了session的創(chuàng)建和存儲(chǔ)。
相關(guān)文章:
1. 怎么在網(wǎng)頁(yè)中設(shè)置圖片進(jìn)行左右滑動(dòng)2. node.js - mysql如何通過(guò)knex查詢今天和七天內(nèi)的匯總數(shù)據(jù)3. mysql 插入數(shù)值到特定的列一直失敗4. mysql 怎么做到update只更新一行數(shù)據(jù)?5. python - 在使用Pycharm時(shí)經(jīng)常看到如下的樣式,小括號(hào)里紅色的部分是什么意思呢?6. javascript - 新浪微博網(wǎng)頁(yè)版的字?jǐn)?shù)限制是怎么做的7. python 合并dict8. 360瀏覽器與IE瀏覽器有何區(qū)別???9. javascript - 用jsonp抓取qq音樂(lè)總是說(shuō)回調(diào)函數(shù)沒(méi)有定義10. sublime可以用其他編譯器替換嗎?
