2012-05-03 7 views
16

मैंने कई बदलाव देखा है। मान लीजिए कि मेरी इच्छा है कि मेरी कुकी एक सेकंड के बाद समाप्त हो जाए। मैं का उपयोग करना चाहिएExpress.js के साथ maxAge का उपयोग करने का सही तरीका क्या है?

app.use(express.session({ secret: 'mysecret', maxAge: new Date(Date.now() + 1000)})); 

या

app.use(express.session({ secret: 'mysecret', maxAge: 1000})); 

या

app.use(express.session({ secret: 'mysecret', cookie: {maxAge: new Date(Date.now() + 1000)}})); 

या

app.use(express.session({ secret: 'mysecret', cookie: {maxAge: 1000}})); 

इसके अलावा मैं अपने कुकी सही ढंग से समाप्त हो रही की स्थापना की है और यह समाप्त हो गया है लगता है। यदि उपयोगकर्ता अपने ब्राउज़र को पुनरारंभ नहीं करता है, तो क्या वे तब तक कुकी जानकारी को तब तक बनाए रखते हैं जब तक वे ऐसा नहीं करते?

उत्तर

21

मुझे लगता है कि आप सीधे स्रोत को देखने से बेहतर होंगे।

एक्सप्रेस के लिए यह मिडलवेयर कनेक्ट का उपयोग करता है, और यहाँ सत्र https://github.com/senchalabs/connect/blob/master/lib/middleware/session.js#L67

के लिए कोड है और कनेक्ट साइट पर और अधिक प्रलेखन theres http://www.senchalabs.org/connect/session.html

तो तुम

app.use(express.session({ secret: 'mysecret', cookie: {expires: new Date(Date.now() + 1000)}})); 

या

कर सकते हैं
app.use(express.session({ secret: 'mysecret', cookie: {maxAge: 1000}})); 
+4

मुझे लगता है कि एफ में जिस तरह से आप "expires" विकल्प का उपयोग करते हैं, प्यास विधि सही नहीं है! क्योंकि यहां मध्यम वेयर कॉन्फ़िगरेशन का मूल्यांकन केवल एक बार किया जाएगा और सभी उपयोगकर्ताओं की एक ही समाप्ति तिथि होगी। –

+0

[स्रोत कोड के लिए लिंक] (https://github.com/expressjs/session/blob/8e57b21bef0d53010c4d37f4beee3f0341f3eaa6/session/cookie.js) बदल गया है। –

संबंधित मुद्दे

 संबंधित मुद्दे