Sesje Express.js aktywowane na podzbiorze tras

Pracuję z Expressjs i chcę uwierzytelniać użytkowników do logowania za pomocą sesji. Witryna / aplikacja powinna z jednej strony umożliwiać użytkownikowi przeglądanie i badanie różnych produktów i informacji na stronie bezstanowej umożliwiającej buforowanie tych stron, ale z drugiej strony powinna mieć funkcję pozwalającą użytkownikowi logować się i uzyskiwać dostęp do różnych treści nabywanych za pomocą sesji .

Tak więc dla podzbioru moich tras chcę aktywować stan sesji, podczas gdy dla komplementarnego podzbioru (reszta moich tras) sesje ekspresowe powinny być dezaktywowane, umożliwiając buforowanie tych stron.

Jak mogę to zrobić w czysty sposób?

Powiedzmy, że trasy, dla których chcę aktywować sesje, to „/ kj% C3% B8p”, „/ biblioteki” i „/ rejestr”.

Próbowałem czegoś takiego

app.configure(function(){
  app.set('views', __dirname + '/views');
  app.set('view engine', 'jade');

  var pageName = 'somepage';
  var oneYear = 1000*60*60*24*365;
  app.use(express.bodyParser());
  app.use('/kj%C3%B8p', express.cookieParser());
  app.use('/kj%C3%B8p', express.session({key: pageName, secret: 'someCode', store: new RedisStore, cookie: {path:'/', maxAge: (5*oneYear), httpOnly: true}}));
  app.use('/bibliotek', express.cookieParser());
  app.use('/bibliotek', express.session({key: pageName, secret: 'someCode', store: new RedisStore, cookie: {path: '/', maxAge: (5*oneYear), httpOnly: true}}));
  app.use('/registrer', express.cookieParser());
  app.use('/registrer', express.session({key: pageName, secret: 'someCode', store: new RedisStore, cookie: {path:'/', maxAge: (5*oneYear), httpOnly: true}}));

  app.use(express.methodOverride());
  app.use(app.router);
  app.use(express.static(__dirname + '/public'));

});

ale to regeneruje obiekt sesji dla każdej z trzech tras i wydaje się dość bałaganiarski. Jakieś wskazówki?

questionAnswers(1)

yourAnswerToTheQuestion