無法訪問s req.session variable
。我將req.session.username
設置爲someVariable
,但我得到了未定義的 。以下Express安裝程序是否允許我訪問每個路徑中的req.session變量?Express.js req.session變量不通過不同路由存儲會話變量
app = express.createServer(
express.logger(),
express.cookieParser(),
express.session({ secret: 'keyboard cat' })
)
快遞網站似乎用這種方式。
編輯:
下面是一些其他的代碼我使用:
if(result[0] != undefined && result[0].Password == req.body.user.pass){
console.log("login successfull");
//Setting in the cookies some variable useful later
req.session.userAuthenticated = true;
req.session.username = result[0].Username;
req.session.projects = result[0].Projects;
這是/login
路線的一部分。在這一部分中,我檢查用戶是否正確輸入了密碼並且他是否已註冊。如果我做了console.log(req.session.username)
我得到登錄用戶的正確的用戶名。
在另一個路線,稱之爲/wathever
我做一次檢查一個數據庫檢索這樣
if(projects[i].name == projectName && projects[i].username == req.session.username){
projectName
後是我收到的東西POST
從用戶,它的工作原理,它有正確的內容,但如果我檢查req.session.username
我收到undefined
。這似乎會話變量不包含什麼,我把裏面的以前路線...
感謝
你可能在你的路線上做錯了什麼,但不在那裏。你能粘貼更多的代碼嗎? – alessioalex
完成,抱歉沒有從頭開始。 – Masiar
我有同樣的問題,你能告訴我什麼是問題? – Hadesara