2017-04-30 1 views
1

den ganzen Tag habe ich jetzt den gleichen Fehler. Jedes Mal, wenn ich die Seite neu lade, wird eine neue Sitzung erstellt. Btw: Ich bin ein NodeJS Anfänger und mein Englisch ist nicht das beste.Jedes Nachladen der Sitzung setzt NodeJS zurück/Eine neue Sitzung wird erstellt

var express = require('express'); 
 
var session = require('express-session'); 
 
var fileStore = require('session-file-store')(session); 
 
var cookieParser = require('cookie-parser'); 
 
var app = express(); 
 

 
app.use(cookieParser('testing')); 
 

 
app.use(session({ 
 
    name: 'Session', 
 
    secret: 'testing', 
 
    saveUninitialized: false, 
 
    resave: true, 
 
    cookie: { 
 
    maxAge: 60000, 
 
    httpOnly: true, 
 
    secure: true 
 
    }, 
 
    store: new fileStore({ 
 
    path: './tmp/sessions/', 
 
    useAsync: true, 
 
    reapInterval: 5000, 
 
    maxAge: 10000 
 
    }) 
 
})); 
 

 
app.get('/', function(req, res) { 
 
    if(res.session) { 
 
    req.session.t++; 
 
    console.log(req.session.t); 
 
    } else { 
 
    req.session.t = 1; 
 
    req.session.save(); 
 
    console.log(req.session.t); 
 
    } 
 
    res.sendFile(__dirname + 'index.html'); 
 
});

Mit besten Grüßen,

Heisen

Antwort

0

Wie beachten Sie, dass eine neue Sitzung erstellt wird? Denn wenn (res.session) nie ausgeführt wird? Beachten Sie, dass Sie nach res.session suchen - ich nehme an, Sie meinen req.session, das ist ein Unterschied. res.session wird immer undefiniert sein, weshalb Sie wahrscheinlich denken, dass die Sitzung leer ist. Darüber hinaus beachten Sie, dass in Ihrem aktuellen Code, wird ein Fehler ausgelöst werden, wenn Sie versuchen,

req.session.t = 1; 
req.session.save(); 

Weil Sie versuchen, ein nicht definiertes Objekt req.session zuzugreifen.

Verwandte Themen