2012-02-02 29 views
5

Basit bir nodejs/express uygulamasına sahibim. kullanıcı kimlik doğrulamasını kaydetmek için kullandığım:nodejs/express. oturumu yenilemek

req.session.auth = user; 

ama this buldum yenilenme yöntemi:

req.session.regenerate(function (err) { 
    req.session.auth = user; 
}); 

Sorum şu: Ben yenilenme yöntemi ya da sadece req.session.auth = kullanıcıyı kullanmalısınız;

+1

Açık uygulamalarda kimlik doğrulama ve oturumları yönetmede gerçekten iyi olmak için pasaportları buldum. http://passportjs.org/ –

cevap

9

req.session.regenerate'a doğru eğilirim, ancak yapmaya çalıştığınız şeye bağlıdır. Sadece req.session.auth = user yaparsanız, o zaman oturumu için auth kaydedeceksiniz. Bununla birlikte, regenerate kullanırsanız, aslında tüm oturumu temizler ve ardından auth'ı kaydedersiniz.

Buradaki fark, ilk yaklaşımda, mevcut oturumdaki diğer oturum değişkenlerinin devam etmesidir. Siteniz için anlamlı olup olmadığını veya kimlik doğrulama tamamlandıktan sonra oturumun temiz olmasını tercih edip etmeyeceğinizi anlamanız size kalmış.