這聽起來很奇特,之後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