1
我有一个aspnet核心网站,使用cookie身份验证。 当我注销时,然后当我点击浏览器的后退按钮时,我导航到最后一个网页,我不想要那个,我不想让用户重定向到登录页面再次验证。如何在注销后防止浏览器后退按钮Aspnet Core
我startup.cs
public void ConfigureServices(IServiceCollection services)
{
....
services.AddIdentity<ApplicationUser, ApplicationRole>(
config =>
{
config.User.RequireUniqueEmail = true;
config.SignIn.RequireConfirmedEmail = true;
config.Password.RequiredLength = 8;
config.Cookies.ApplicationCookie.LoginPath = "/Home/Login";
})
.AddEntityFrameworkStores<DbContext>()
.AddDefaultTokenProviders();
......
}
我controller.cs
public class HomeController : Controller
{
.....
private readonly string _externalCookieScheme;
....
public HomeController(
.....
IOptions<IdentityCookieOptions> identityCookieOptions,
.....)
{
....
_externalCookieScheme = identityCookieOptions.Value.ExternalCookieAuthenticationScheme;
....
}
[HttpGet]
[AllowAnonymous]
public async Task<IActionResult> Login()
{
// Clear the existing external cookie to ensure a clean login process
await HttpContext.Authentication.SignOutAsync(_externalCookieScheme);
return View();
}
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> LogOff()
{
await HttpContext.Authentication.SignOutAsync(_externalCookieScheme); //don´t remove the cookie
_logger.LogInformation(4, "User logged out.");
return RedirectToAction(nameof(HomeController.Login), "Home");
}
}
我是缺少在这里?
此致敬礼。
jolynice
请注意,如果您想宣传自己的产品/博客,您必须披露您的关联**,否则您的答案可能被标记为垃圾邮件。请阅读[如何不成为垃圾邮件发送者](https://stackoverflow.com/help/promotion) – DavidPostill
感谢您的信息。我已经更新了答案。 – OpenIDAuthority
OpenIdAuthority,感谢您的帮助。现在正在工作。 – jolynice