2016-05-13 4 views
2

私のアプリケーションにはパスポート - ローカル戦略が実装されています。あなたは私がoriginalMaxAgeを設定見ることができるようにpassport.js:私がエクスプレスアプリでは動作しないことを覚えておいてください

app.use(passport.initialize()); 
app.use(passport.session()); 

app.post("/login", function (req, res, next) { 
    var authFunction = passport.authenticate("local", function (err, user, info) { 
     if (err) { 
      next(err); 
     } else { 
      req.logIn(user, function (err) { 
       if (err) { 
        next(err); 
       } else { 
        if (req.body.remember) { 
         req.session.cookie.originalMaxAge = 2592000000; 
        } else { 
         req.session.cookie._expires = false; 
        } 
        res.redirect("/"); 
       } 
      }); 
     } 
    }); 
    authFunction(req, res, next); 
}); 

が、私は閉じて、再びブラウザを開いたとき、それは動作しません。今、私は私の機能を覚えて実装するつもりです。
Connect Documentationから

答えて

0

セッション#クッキー

各セッションには、固有のCookieオブジェクトは、それに付随しています。これにより、 を訪問者ごとにセッションCookieを変更することができます。たとえば、 は、cookie をuser-agentの間のみ残すことができるようにreq.session.cookie.expiresをfalseに設定することができます。

セッション#MAXAGE

またreq.session.cookie.maxAgeは、我々はまた、適切.expires特性を調整するための新たな価値 を再度割り当てることができた、ミリ秒単位で残り時間 を返します。

if (req.body.remember) { 
    var oneHour = 3600000; 
    req.session.cookie.expires = new Date(Date.now() + hour); 
    req.session.cookie.maxAge = hour; 
} else { 
    req.session.cookie.expires = false; 
} 
:以下 がこれによれば

基本的に同じです、あなたはexpiresmaxAgeプロパティを設定する必要があります

関連する問題