Session 会话不会突然起作用
我对会话有一个很大的问题 我将围绕“Redis”节点创建一个应用程序,使用不同的库作为express 但突然之间,这些会议不再有效。我不明白为什么。 因此,我重新格式化了我的服务器,并正确地重新安装了所有服务器。 (我正在使用Debian 6) 基本测试仍然不起作用:( 以下是测试:Session 会话不会突然起作用,session,node.js,redis,express,Session,Node.js,Redis,Express,我对会话有一个很大的问题 我将围绕“Redis”节点创建一个应用程序,使用不同的库作为express 但突然之间,这些会议不再有效。我不明白为什么。 因此,我重新格式化了我的服务器,并正确地重新安装了所有服务器。 (我正在使用Debian 6) 基本测试仍然不起作用:( 以下是测试: var express = require('express'); var app = express.createServer(); var RedisStore = require('connect-redi
var express = require('express');
var app = express.createServer();
var RedisStore = require('connect-redis')(express);
app.use(express.bodyParser());
app.use(express.cookieParser());
app.use(express.session({ secret: "keyboard cat", store: new RedisStore }));
app.get('/', function(req, res){
var sess = req.session;
req.session.visitCount = req.session.visitCount ? req.session.visitCount + 1 : 1;
if (sess.views) {
res.setHeader('Content-Type', 'text/html');
res.write('<p>views: ' + sess.views + '</p>');
res.write('<p>expires in: ' + (sess.cookie.maxAge / 1000) + 's<p/>');
res.write('<p>You have visited this page ' + req.session.visitCount + ' times</p>');
res.end();
sess.views++;
} else {
sess.views = 1;
res.end('welcome to the session demo. refresh!');
}
});
app.listen(4000);
var express=require('express');
var app=express.createServer();
var redistore=require('connect-redis')(express);
app.use(express.bodyParser());
use(express.cookieParser());
app.use(express.session({secret:“键盘猫”,store:new RedisStore}));
app.get('/',函数(req,res){
var sess=请求会话;
req.session.visitCount=req.session.visitCount?req.session.visitCount+1:1;
if(sess.视图){
res.setHeader('Content-Type','text/html');
res.write(“视图:”+sess.views+”);
res.write(“在:”+(sess.cookie.maxAge/1000)+“s中过期);
res.write(“您已访问此页面”+req.session.visitCount+”次”;
res.end();
sess.views++;
}否则{
sess.views=1;
res.end('欢迎使用会话demo.refresh!');
}
});
app.listen(4000);
程序运行正确(无错误)。
但是当我使用“sess.views”时,它永远都是无效的
所以我总是看到:欢迎来到会话演示。刷新
我有点绝望
提前感谢您的帮助代码
我相信sess.views++
需要在res.end()之前调用
系统信息
卷曲示例
alfred@alfred-笔记本电脑:~/node/stackoverflow/6700472$curl-c cookiehttp://localhost:4000/
欢迎来到会话演示。刷新!alfred@alfred-笔记本电脑:~/node/stackoverflow/6700472$curl-b cookiehttp://localhost:4000/
视图:1过期时间:14396.223s您已访问此页面2次alfred@alfred-笔记本电脑:~/node/stackoverflow/6700472$curl-b cookiehttp://localhost:4000/
视图:2过期时间:14399.221s您已访问此页面3次alfred@alfred-笔记本电脑:~/node/stackoverflow/6700472美元
很好用
var express = require('express');
var app = express.createServer();
var RedisStore = require('connect-redis')(express);
app.use(express.bodyParser());
app.use(express.cookieParser());
app.use(express.session({ secret: "keyboard cat", store: new RedisStore }));
app.get('/', function(req, res){
var sess = req.session;
req.session.visitCount = req.session.visitCount ? req.session.visitCount + 1 : 1;
if (sess.views) {
res.setHeader('Content-Type', 'text/html');
res.write('<p>views: ' + sess.views + '</p>');
res.write('<p>expires in: ' + (sess.cookie.maxAge / 1000) + 's<p/>');
res.write('<p>You have visited this page ' + req.session.visitCount + ' times</p>');
sess.views++;
res.end();
} else {
sess.views = 1;
res.end('welcome to the session demo. refresh!');
}
});
app.listen(4000, '127.0.0.1');
alfred@alfred-laptop:~/database/redis-2.2.0-rc4/src$ npm ls
/home/alfred
├── connect-redis@1.0.6
├─┬ everyauth@0.2.15
│ ├─┬ connect@1.5.2
│ │ ├── connect-redis@1.0.6 extraneous
│ │ ├── mime@1.2.2
│ │ └── qs@0.2.0
│ ├── oauth@0.9.2
│ ├── openid@0.1.8
│ ├── restler@0.2.1
│ └─┬ xml2js@0.1.9
│ └── sax@0.1.4
├─┬ express@2.4.1
│ ├─┬ connect@1.5.2
│ │ ├── connect-redis@1.0.6 extraneous
│ │ ├── mime@1.2.2
│ │ └── qs@0.2.0
│ ├── mime@1.2.2
│ └── qs@0.2.0
├── hiredis@0.1.12
├── jade@0.12.4
├── node-expat@1.3.2
├── node-stringprep@0.0.5
├─┬ node-xmpp@0.2.9
│ └── ltx@0.0.5
├── nodeunit@0.5.1
├── notifo@0.0.2
├── openid@0.2.0
├─┬ optimist@0.2.5
│ └── wordwrap@0.0.1
├── recaptcha@1.1.0
├── redis@0.6.6
└─┬ socket.io@0.7.6
├── policyfile@0.0.3
├── redis@0.6.0
└── socket.io-client@0.7.3
alfred@alfred-laptop:~/database/redis-2.2.0-rc4/src$ npm -v
1.0.15
alfred@alfred-laptop:~/database/redis-2.2.0-rc4/src$ node -v
v0.4.9
alfred@alfred-laptop:~/database/redis-2.2.0-rc4/src$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=10.10
DISTRIB_CODENAME=maverick
DISTRIB_DESCRIPTION="Ubuntu 10.10"
alfred@alfred-laptop:~/node/stackoverflow/6700472$ curl -c cookie http://localhost:4000/
welcome to the session demo. refresh!alfred@alfred-laptop:~/node/stackoverflow/6700472$ curl -b cookie http://localhost:4000/
<p>views: 1</p><p>expires in: 14396.223s<p/><p>You have visited this page 2 times</p>alfred@alfred-laptop:~/node/stackoverflow/6700472$ curl -b cookie http://localhost:4000/
<p>views: 2</p><p>expires in: 14399.221s<p/><p>You have visited this page 3 times</p>alfred@alfred-laptop:~/node/stackoverflow/6700472$