这听起来很奇特,之后fs.mkdir
你的会话被删除。 (我发现你的其他问题)
但回到问题,这里有一些代码片断,你可以如何使用会话(redis)。
var express = require('express')
, fs = require('fs')
, http = require('http')
, RedisStore = require('connect-redis')(express)
, sessionStore = new RedisStore()
, app = express()
;
app.configure(function(){
app.set('port', 3000);
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(express.cookieParser('secret'));
app.use(express.session({
store: sessionStore
}));
app.use(express.static(__dirname + '/public'));
app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
});
app.get('/', function(req, res){
res.setHeader("Content-Type", "text/html");
console.log(req.session);
console.log('------------------------');
res.end('root');
});
app.get('/dir/:id', function(req, res){
console.log(req.session);
console.log('------------------------');
fs.mkdir(req.params.id);
if (req.session.dirs === undefined)
req.session.dirs = [];
req.session.dirs.push(req.params.id);
console.log(req.session);
console.log('------------------------');
res.setHeader("Content-Type", "text/html");
res.end('dir');
});
server = http.createServer(app).listen(3000);
你应该阅读的express的文档,浏览快递
的examples现在,当'fs.mkdir'被称为在app.post,我不能指定一个新的req.session例如,用户,但我不会失去其他会话。我要试一试你的代码,谢谢! :D – MrMangado
我刚试过,nodemon告诉req.session未定义 – MrMangado