वह मान जो आप timeout
विशेषता में सेट कर रहे हैं वह सत्र टाइमआउट मान सेट करने के लिए सही तरीकों में से एक है।
timeout
विशेषता निर्दिष्ट करता है कि सत्र छोड़ने से पहले सत्र को निष्क्रिय किया जा सकता है। इस विशेषता के लिए डिफ़ॉल्ट मान 20.
इस विशेषता के लिए 1 का मान निर्दिष्ट करके, आपने सत्र को निष्क्रिय होने के 1 मिनट बाद त्याग दिया है।
इस परीक्षण के लिए एक सरल aspx पेज बनाते हैं, और Page_Load घटना में इस कोड लिखने,
Response.Write(Session.SessionID);
एक ब्राउज़र खुला है और इस पृष्ठ पर जाएं। एक सत्र आईडी मुद्रित किया जाएगा। पास करने के लिए एक मिनट प्रतीक्षा करें, फिर रीफ्रेश करें दबाएं। सत्र आईडी बदल जाएगी।
अब, यदि मेरा अनुमान सही है, तो आप सत्र के समय के रूप में अपने उपयोगकर्ताओं को लॉग आउट करना चाहते हैं। इस के लिए, आप रिग ऊपर एक प्रवेश पृष्ठ जो उपयोगकर्ता प्रमाणिकता की पुष्टि करेंगे, और इस तरह एक सत्र चर बना सकते हैं करने के लिए - अब
Session["UserId"] = 1;
, तो आप इस तरह इस चर के लिए हर पृष्ठ पर एक जाँच करने के लिए होगा -
if(Session["UserId"] == null)
Response.Redirect("login.aspx");
यह एक बेयर-हड्डियों का उदाहरण है कि यह कैसे काम करेगा।
लेकिन, अपने उत्पादन की गुणवत्ता को सुरक्षित ऐप्स बनाने के लिए, Roles & Membership एएसपी.NET द्वारा प्रदान की गई कक्षाओं का उपयोग करें। वे फॉर्म-आधारित प्रमाणीकरण प्रदान करते हैं जो सामान्य सत्र-आधारित प्रमाणीकरण का उपयोग करने की कोशिश कर रहे हैं जो अधिक विश्वसनीय है।
जिस तरह से आप को परिभाषित टाइमआउट सही है। क्या आपके पास कोई समस्या है? –
हाँ, यह ठीक है .. –
आप जानते हैं कि इसका मतलब है कि यह निष्क्रियता के 1 मिनट के बाद समाप्त हो जाएगा, इसकी शुरूआत से 1 मिनट बाद नहीं? मेरा अनुमान है कि यदि आप इस सवाल से पूछ रहे हैं, और टाइमआउट सही तरीके से टाइप कर चुके हैं, तो आप इस बात से गुमराह हो सकते हैं कि यह कैसे काम करता है। –