मुझे पता है कि जब ब्राउज़र asp.net 2.0 में सर्वर साइड पर बंद कर दिया है चाहता था। पीछे कोड में कैसे पता लगाया जाए?कैसे asp.net में सर्वर साइड पर ब्राउज़र पास पता लगाने के लिए?
उत्तर
क्लाइंट साइड स्क्रिप्ट:
< body onbeforeunload="window.open('http://www.website.com/browserclosed.aspx','mywindow','width=1,height=1');">
सर्वर साइड स्क्रिप्ट (browserclosed.aspx):
// page_load
int userId = Convert.ToInt32(request.session("userId"));
ReportBrowserClosed(userId);
// Do what you want in ReportBrowserclosed() method
संक्षिप्त उत्तर: आप सीधे ऐसा नहीं कर सकते क्योंकि http स्टेटलेस है। शायद आप कुछ AJAX सुनवाई पूलिंग, सत्र टाइमआउट पहचान और अन्य चाल का उपयोग कर सकते हैं।
अधिक स्पष्टीकरण और विचारों के लिए this question पर एक नज़र डालें। यह जावा आधारित है, लेकिन विचार भाषा अज्ञेयवादी हैं।
पहली चीज जो दिमाग में आती है वह यह है कि आप अनलोड ईवेंट को हुक करते हैं और बस अतुल्यकालिक रूप से पोस्ट करते हैं कि ब्राउज़र आपकी साइट से दूर नेविगेट किया गया है (विंडो बंद कर दिया गया है)। हालांकि, जिस तरह से HTTP का उपयोग स्टेटलेस वेब साइट बनाने के लिए किया जा रहा है, यह इस अक्षम बनाता है। आपके पास उपयोगकर्ता कनेक्टिविटी को ट्रैक करने का विश्वसनीय तरीका नहीं है।
बस पर विचार कैसे आप कई सत्रों संभाल होगा? अगर मैं कई और कई, टैब या विंडो में खुला एक ही साइट है और एक को छोड़कर सभी को बंद आप कैसे बताऊँ कि मैं अभी भी जुड़ा रहा हूँ? और इसके मजाक के लिए, कहें कि मेरा ब्राउज़र कहीं बीच में दुर्घटनाग्रस्त हो गया है।
बात यह है कि, मैं कुछ ऐसी चीज तैयार कर सकता हूं जो आपकी समस्या का समाधान करे। हालांकि, यह कभी भी भरोसेमंद नहीं होगा क्योंकि HTTP में कनेक्टिविटी के लिए अंतर्निहित नियंत्रण तंत्र नहीं है।
मुझे फॉलो अप प्रश्न के साथ इस प्रश्न का उत्तर देना होगा। ब्राउज़र विंडो बंद होने पर आपको यह जानने की आवश्यकता क्यों है?
यदि आपको कुछ संसाधन साफ करने की आवश्यकता है तो दो सर्वर साइड इवेंट्स हैं, जो एएसपी.नेट द्वारा सुविधा प्रदान की जाती हैं जिन्हें आप अधिक विश्वसनीय रूप से उपयोग कर सकते हैं। और वह Session_End
या Application_End
है।
काफी स्पष्ट सवाल क्यों आप इस की क्या ज़रूरत है है? क्या आप लॉगआउट समय या समापन समय स्टोर करना चाहते हैं? फिर सत्र समय समाप्ति में पकड़ना बेहतर होता है। क्या आप किसी अन्य पेज को रीडायरेक्ट करना चाहते हैं, फिर जावास्क्रिप्ट के पृष्ठ अनलोड ईवेंट में पकड़ने के लिए बेहतर है।
- 1. डब्ल्यूसीएफ: सर्वर क्लाइंट-साइड का पता लगाने के लिए कैसे करें यदि सर्वर मुझे
- 2. अमान्य ASP.NET FormsAuthentication सर्वर साइड
- 3. PHP मोबाइल ब्राउज़र का पता लगाने?
- 4. क्या हमारे पास ब्राउज़र साइड प्रमाणीकरण
- 5. ब्राउज़र का पता लगाने के लिए कैसे जावास्क्रिप्ट
- 6. का पता लगाने जब जावास्क्रिप्ट ASP.NET
- 7. jQuery ब्राउज़र का पता लगाने?
- 8. कैसे मैं सर्वर साइड
- 9. ब्राउज़र (क्लाइंट साइड) में AJAX अनुरोधों का पता लगाएं
- 10. जावास्क्रिप्ट में साइड माउस क्लिक का पता लगाने के लिए कैसे?
- 11. कैसे एक ASP.net अनुप्रयोगों में SqlServer कनेक्शन रिसाव का पता लगाने के लिए?
- 12. सर्वर साइड
- 13. Asp.net सर्वर-साइड कोड ब्लॉक स्पष्टीकरण
- 14. फ़ायरफ़ॉक्स में रीडायरेक्ट का पता लगाने के लिए कैसे?
- 15. सर्वर साइड पर
- 16. ASP.NET IE10 के कारण _doPostBack पता लगाने के लिए विफल रहता है अपरिभाषित है JavaScript त्रुटि
- 17. सर्वर-पक्ष का पता लगाने के लिए कि कुकीज़ अक्षम हैं या नहीं
- 18. ब्राउज़र का समर्थन निर्दिष्ट सीएसएस छद्म-वर्ग का पता लगाने के लिए कैसे पता लगाएं?
- 19. ब्राउज़र समर्थन iframe का पता लगाने के लिए कैसे पता लगाएं?
- 20. स्वाइप पता लगाने के लिए
- 21. का पता लगाने के SNI (सर्वर नाम संकेत) जावास्क्रिप्ट
- 22. सर्वर-साइड कैश कैसे करें ASP.NET कस्टम HttpHandler प्रतिक्रिया
- 23. ऑटोबॉक्सिंग का पता लगाने के लिए उपकरण का निर्माण?
- 24. क्यूटी में उपयोगकर्ता निष्क्रियता का पता लगाने के लिए कैसे?
- 25. रीढ़ मार्गों - ब्राउज़र का पता लगाने के वापस बटन प्रेस
- 26. क्लाइंट साइड पर एक्सेस सर्वर साइड वैरिएबल और इसके विपरीत Asp.Net और जावास्क्रिप्ट
- 27. क्लासपाथ में डुप्लिकेट जेएआर का पता लगाने के लिए कैसे?
- 28. ASP.NET अजाक्स क्लाइंट साइड ढांचे
- 29. Asp.net पर ब्राउज़र बंद करें
- 30. बैटरी पर चलने पर लैपटॉप का पता लगाने के लिए कैसे पता लगाया जाए?
मैं ओ पी के लिए उत्तर नहीं दे सकता है, लेकिन यह करने के लिए एक आम कारण एक को रोकने के लिए है लंबे समय से चलने वाले ऑपरेशन (क्वेरी, रिपोर्ट पीढ़ी, आदि) जब उपयोगकर्ता अपने ब्राउज़र को छोड़ देता है और बंद कर देता है। – Gabe