要解决这个问题,可以使用以下两种方法之一:
在视图文件中使用以下JavaScript代码,以防止用户通过单击浏览器的后退按钮导航回先前重定向的页面:
此代码将防止用户通过后退按钮返回重定向的页面,因为浏览器会将其重定向到更远的历史记录。然后,使用JavaScript中的window.onunload事件来清空浏览器缓存,以防止用户通过单击浏览器的后退按钮返回之前的页面。
在ASP.NET Core MVC控制器中,您可以返回ActionResult对象而不是视图。这使您能够使用action methods返回不同的ActionResult类型,例如RedirectToRouteResult、RedirectResult或ContentResult。通过使用RedirectToRouteResult RETURN,您可以将请求重定向到另一个操作方法而不是返回ViewResult。然后,如果用户单击浏览器的后退按钮,浏览器会将您重定向到更远的历史记录,而不是重定向到之前的页面。
以下是一个使用RedirectToRouteResult的例子:
public IActionResult Index()
{
// do some processing here
return RedirectToAction("AnotherAction");
}
public IActionResult AnotherAction()
{
// do some processing here
return View();
}
在此示例中,当用户单击浏览器的后退按钮时,他们会被重定向到更远的历史记录而不是返回Index视图。