和標題一樣,我想知道當客戶端的瀏覽器關閉時會話是如何到期的?關閉瀏覽器時ASP.NET會話如何過期?
回答
該會話位於服務器上。當瀏覽器關閉足夠長時間或者使用時間不夠長,或者新的請求到達時(不包含cookie),或者cookie指向過去太遠的sessionid時(默認超時時間爲20分鐘)。
當沒有連接時,會話將在未確定的時間從內存中刪除,或者在會話上以編程方式調用.Abandon
。
當會話不可用或者會話因超時而被清除時,會創建一個新的會話對象。當這是瀏覽器請求的結果時,Session_End
事件將在global.asax文件中觸發。
注意:會話超時和清除的實際方式取決於。即,進程會話將被銷燬並觸發Session_Timeout
。超級會話不會,並且會在狀態服務器或SQL服務器中銷燬。在後一種情況下,定期調用一個存儲過程來清理。只有在服務器上有活動時纔會調用存儲過程,這意味着會話在(數據庫)內存中的活動時間可能超過20分鐘,但在下次訪問時會被銷燬。
瀏覽器臨時cookie被刪除,並且服務器在自上次訪問以來的預定時間量之後殺死會話數據。
Cookie有自己的到期細節,與Web服務器上的會話分開。 – 2010-08-18 10:57:36
是的,並且沒有用於追蹤會話的cookie沒有被賦予到期日期/時間並且在瀏覽器關閉時即過期。 http://en.wikipedia.org/wiki/HTTP_cookie – Ashley 2010-08-19 12:51:51
它確實沒有。它存在於服務器上,直到超時(通常20分鐘)。但是,由於使用會話cookie在瀏覽器中保持活動狀態,並且在瀏覽器關閉時到期,用戶將無法再次重新連接到該會話。
- 1. 會話過期時關閉瀏覽器? asp.net
- 2. 關閉瀏覽器或標籤時關閉Asp.Net會話
- 3. 瀏覽器關閉時會話cookie是否過期?
- 4. session.cookie_lifetime = 0時,爲什麼會話在瀏覽器關閉時不會過期?
- 5. ASP.net會話如果他關閉瀏覽器會破壞
- 6. 在瀏覽器關閉asp.net的放棄會話。關閉會話cookie
- 7. Spring Roo - 在瀏覽器關閉時關閉會話
- 8. 關閉瀏覽器會話丟失
- 9. 如何在codeigniter3中關閉瀏覽器時保持會話?
- 10. 如何在瀏覽器關閉時結束會話
- 11. 如何在JSF中關閉瀏覽器時結束http會話
- 12. 如果瀏覽器關閉,JSF會話過期階段監聽器
- 13. 如何在ASP.NET中的會話超時後重定向或關閉瀏覽器?
- 14. 當iOS和Chrome瀏覽器關閉應用程序時,Rails會話過期
- 15. 如何顯式地將asp.net會話設置爲僅在關閉瀏覽器或顯式登錄時過期?
- 16. 瀏覽器關閉和asp.net
- 17. 關閉瀏覽器後的ASP.NET會話狀態
- 18. 會話在使用狀態服務器關閉瀏覽器後過期
- 19. Yii2會話瀏覽器關閉時超時?
- 20. 在瀏覽器上關閉會話關閉
- 21. javascript-ajax-關閉JAVA中關閉瀏覽器的會話
- 22. 在瀏覽器中關閉會話值關閉
- 23. 關閉瀏覽器/選項卡上的會話關閉
- 24. .NET會話 - 持續會話,即使用戶關閉瀏覽器
- 25. 如何刪除關閉瀏覽器的會話?
- 26. 如何使JSF中關閉瀏覽器的會話無效
- 27. 如何清除瀏覽器關閉的設計會話?
- 28. 如何讓PHP會話在瀏覽器關閉時過期或延長一段時間
- 29. 爲什麼cookies在關閉瀏覽器後不會過期?
- 30. 使用PHP,如何在瀏覽器關閉後讓cookie過期?
當瀏覽器關閉時,Session_Timeout事件將從何處以及如何觸發? – Bala 2010-08-18 11:03:20
@Bala:瀏覽器關閉時不會觸發,HTTP是無狀態的。但會議將在某個時間被清除。我會通過一個鏈接更新我的帖子,爲什麼這是它的方式。 – Abel 2010-08-18 11:14:21
@Bala:實際上,我剛剛重寫了我的答案,以消除含糊不清和含糊(我希望),但是確實要問是否還不清楚。 – Abel 2010-08-18 11:21:26