【发布时间】:2013-11-24 15:17:19
【问题描述】:
无法访问 sreq.session variable。我将req.session.username 设置为someVariable 但我得到了
不明确的。以下 Express 设置是否允许我访问每条路由中的 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。似乎会话变量不包含我在上一条路线中放入的内容...
谢谢
【问题讨论】:
-
您可能在路线中做错了什么,但不存在。你能粘贴更多代码吗?
-
完成了,很抱歉没有从头开始。
-
我有同样的问题,你能告诉我是什么问题吗?