Trong Asp.net WebForms có một sự kiện được gọi là Seesion_End() trong global.asax, bất cứ khi nào session hết thời gian hoặc bạn gọi Session.Abandon() xử lý sự kiện này được thực hiện, tôi cần phải có loại hành vi tương tự trong asp.net Core, là nó có thể?Có Session.Abandon() asp.net Core
Trả lời
docs bao gồm hầu hết điều này. Thời gian chờ của phiên được đặt như sau:
services.AddSession(options =>
{
options.IdleTimeout = TimeSpan.FromSeconds(10);
});
Nhưng vì nó tồn tại là cookie, cookie cũng có ngày hết hạn. Vì vậy, nếu IdleTimeout
hết hạn, phiên sẽ hết hạn. Nếu cookie hết hạn, phiên sẽ biến mất. Nếu cookie bị xóa, phiên sẽ biến mất.
Gọi Session.Clear()
xóa nội dung của phiên nhưng giữ nguyên phiên (còn gọi là cookie không bị xóa) như được mô tả trong source.
trong Asp.net WebForms có cái gì đó được gọi là Seesion_End() trong global.asax, bất cứ khi nào phiên là timeout hoặc bạn gọi Session.Abandon() xử lý sự kiện này được thực hiện, tôi cần phải có loại tương tự của hành vi trong asp.net Core, là nó có thể? –
Vì vậy, không có cách nào để làm mất hiệu lực một phiên, ví dụ: khi người dùng đang sử dụng nút đăng xuất? Điều gì sẽ là cách được khuyến nghị để vô hiệu hóa một phiên ngoài việc thiết lập thời gian chờ nhàn rỗi rất thấp. Ngoài ra những gì giá trị có thể được kiểm tra để đảm bảo rằng thời gian chờ thực sự mất hiệu lực phiên? Nó bằng cách nào đó dường như rằng việc thực hiện Session trong. Core Core không được thực hiện đầy đủ, hoặc tôi đang thiếu một cái gì đó ở đây. – vm370
@ vm370 Như đã đề cập bởi Tratcher ở trên, cách được khuyến nghị để vô hiệu hóa một phiên từ mã là gọi 'Session.Clear()'. Có một số cuộc thảo luận thêm ở đây: [Bài phát hành số 27] (https://github.com/aspnet/Session/issues/27) – TallMcPaul
Bạn có thể xóa phiên bằng cách đơn giản gọi:
HttpContext.Session.Clear();
- 1. @ Html.EnumDropDownListFor trong Asp.net Core
- 2. ServicePointManager trong ASP.NET Core
- 3. ASP.NET Core "CreatedAtRoute" Không
- 4. Request.Files trong ASP.NET CORE
- 5. ASP.NET Core Response.End()?
- 6. UserHostAddress trong Asp.net Core
- 7. ASP.NET Core Change Build directory
- 8. Xác thực cookie Asp.Net Core
- 9. MediatR với ASP.NET Core DI
- 10. Không intellisense trong ASP.Net Core
- 11. sự khác biệt giữa việc tạo một dự án ASP.NET Core (NET Core) và ASP.NET Core (.NET Framework)
- 12. Đăng các tệp từ ASP.NET Core web api lên một trang web ASP.NET Core khác api
- 13. Sử dụng ASP.NET Core mà không có MVC
- 14. ASP.NET Core có còn sử dụng OWIN không?
- 15. ASP.Net Core 1.0 có hỗ trợ dự án WebForm
- 16. Có thể sử dụng Kiểm soát Reportviewer trong ASP.net Core
- 17. ASP.NET Core 2.0 Bearer Auth không có Identity
- 18. Máy tính SHA1 với ASP.NET Core
- 19. ASP.NET Core Middleware Passing Parameters to Controllers
- 20. Asp.net Core hiển thị chế độ xem
- 21. Tiêm tài sản trong Asp.Net Core
- 22. Mocking framework cho asp.net core 5.0
- 23. ASP.NET Core Identity 3 Cookie timeout
- 24. Xác thực tùy chỉnh trong ASP.Net-Core
- 25. Tự động tải một ASP.NET Core Assembly
- 26. IViewLocationExpander.PopulateValues () cho trong Asp.Net Core MVC
- 27. SQLite trong ASP.NET Core với EntityFrameworkCore
- 28. Dự án ASP.NET Core 1.0 F #
- 29. Ủy quyền với Asp.Net Core WebAPI
- 30. Lỗi ASP.NET Core 404 trên IIS 10
Tôi nghĩ bạn nên nói lại câu hỏi của bạn. Khó trả lời! – Thomas
Bạn đã thử Session.Clear() chưa? – Tratcher
Tôi cần nắm bắt sự kiện khi phiên được tự động hết thời gian chờ, có bất kỳ lý do nào để nắm bắt sự kiện đó hoặc có bất kỳ sự kiện nào không? –