का उपयोग कर आरओआर में सत्र टाइमआउट संदेश मेरे पास एक आवेदन है जो 30 मिनट के लिए तैयार और सत्र समय समाप्ति के साथ सुरक्षित है। विवेक के साथ सभी सामान्य नेविगेशन के लिए अच्छी तरह से काम कर रहे हैं, यदि उपयोगकर्ता समय पर लिंक पर क्लिक करता है तो वे "आपके सत्र की समयसीमा समाप्त होने के बाद, कृपया जारी रखने के लिए फिर से साइन इन करें" कहकर एक संदेश के साथ लॉगिन स्क्रीन पर रीडायरेक्ट हो जाते हैं।डेविस
हालांकि मेरे पास कई जगहों पर AJAX है। यदि सत्र का समय समाप्त हो जाता है और उपयोगकर्ता AJAX ऑपरेशन करता है तो मैं ऊपर जैसा ही व्यवहार चाहता हूं बल्कि पृष्ठभूमि में 401 त्रुटि के साथ चुपचाप विफल रहता हूं।
अब तक मैं 401S पकड़ने और फिर से लोड करने के लिए प्रत्येक पृष्ठ पर इस jQuery कोड है:
$(document).ajaxError(function(e, error) {
switch(error.status) {
case 401: {
// unauthorised (possible timeout)
location.reload();
break;
}
यह काफी अच्छी तरह से काम करता है, लेकिन एक कष्टप्रद मुद्दा है:
क्योंकि ajax अनुरोध हिट पहली वसीयत , जब मेरा एप्लिकेशन पेज को पुनः लोड करता है तो मुझे लॉगिन पेज पर निर्देशित किया जाता है, लेकिन मुझे टाइमआउट संदेश नहीं दिखाई देता है, मुझे अनधिकृत दिखाई देता है "आपको साइन इन करने या जारी रखने से पहले साइन अप करने की आवश्यकता है।" संदेश।
क्या यह सुनिश्चित करने का कोई तरीका है कि दूसरे अनुरोध पर अभी भी टाइमआउट संदेश दिखाया गया है?