gpt4 book ai didi

asp.net-mvc - “后退”按钮不会导致回发到MVC中的 Controller 操作

转载 作者:行者123 更新时间:2023-12-04 13:19:48 24 4
gpt4 key购买 nike

当我单击IE10或Win7上的Chrome中的“后退”按钮时,它没有达到我的MVC Controller 中的断点。 IE开发人员工具中的“网络”标签显示其304未修改,并且Fiddler未捕获请求。

我期待发回该邮件,因此可以在 Controller 中进行工作。
就我而言,该错误是:

  • 登录
  • 确保您在默认页面上
  • 单击左上角的浏览器后退按钮,现在您将回到
    登录屏幕
  • 当您再次使用相同的凭据登录
    做到这一点-我得到“提供的防伪 token 是为用户”提供的,但当前用户为“用户名”。

  • 我尝试将其放入 Controller 中,但未成功:
    this.HttpContext.Response.CacheControl = "private";
    this.HttpContext.Response.Cache.SetMaxAge(TimeSpan.FromSeconds(0));
    public ActionResult Index()
    {
    // Get: /Home/Index
    if (this.User.Identity.IsAuthenticated)
    {
    // send the user to the GlobalAssetDashboard
    return this.RedirectToAction(
    "GlobalAssetDashboard",
    "Dashboard",
    new
    {
    area = "DashboardArea"
    });
    }

    return this.View("Login");
    }
    public ActionResult Login()
    {
    // GET: /Home/Login
    if (this.User.Identity.IsAuthenticated)
    {
    // send the user to the GlobalAssetList
    return this.RedirectToAction(
    "GlobalAssetDashboard",
    "Dashboard",
    new
    {
    area = "DashboardArea"
    });
    }

    return this.View("Login", new LoginModel());
    }

    有没有一种方法可以强制回发或检测到此情况并在JavaScript中引起刷新?还是我的 Controller 方法实现不正确?

    最佳答案

    通常,这样的缓存规则不是以它们执行的逻辑为条件的,整个URL要么被缓存,要么不被缓存。在这种情况下,这样简单的事情就足够了。

    [OutputCache(NoStore=true, Duration=0)]
    public ActionResult Login()
    {

    }

    http://msdn.microsoft.com/en-us/library/dd492556(v=vs.108).aspx

    关于asp.net-mvc - “后退”按钮不会导致回发到MVC中的 Controller 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16308198/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com