500: Ошибка типа при попытке установить переменную сеанса в expressjs - PullRequest
2 голосов
/ 28 января 2012

Я пытаюсь научиться использовать сеансы с экспрессом. В нижнюю часть файла app.js, поставляемого с express, я добавил следующее:

app.use(express.cookieParser());
app.use(express.session({ secret:"string"}));

// Routes
app.get('/', function(req, res){
  req.session.visitCount = req.session.visitCount ? req.session.visitCount + 1 : 1;
  res.send('You have visited this page ' + req.session.visitCount + ' times');
});

Однако, когда я запускаю node app.js, я получаю эту ошибку:

500 TypeError: Cannot set property 'visitCount' of undefined

Может кто-нибудь сказать мне, если синтаксис выглядит правильно?

1 Ответ

4 голосов
/ 29 января 2012

Я нашел ответ! как использовать сессии в express, couchDB и node.js

"Если вы выполняете app.use (app.router) перед строками, которые устанавливают cookie и обработку сеансов, попробуйте переместить его после них. Это решило ту же проблему для меня."

Поскольку app.use (app.router) находился в функции конфигурации, мне пришлось переместить две строки app.use в начало функции конфигурации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...