ASP.NETMVC登录页面返回URL在浏览器中重复显示
创始人
2024-09-19 05:00:33
0

可以通过重定向来解决这个问题。在登录动作中,我们可以在重定向 URL 中添加一个参数来指定返回 URL,在登录成功后把用户重定向到该 URL。这样就可以避免 URL 在浏览器中重复显示。

示例代码如下:

public ActionResult Login(string returnUrl)
{
    ViewBag.ReturnUrl = returnUrl;
    return View();
}

[HttpPost]
public ActionResult Login(LoginModel model, string returnUrl)
{
    if (ModelState.IsValid)
    {
        if (Membership.ValidateUser(model.UserName, model.Password))
        {
            FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);

            if (!string.IsNullOrEmpty(returnUrl))
            {
                return RedirectToAction("Index", returnUrl);
            }
            
            return RedirectToAction("Index", "Home");
        }
        else
        {
            ModelState.AddModelError("", "用户名或密码不正确。");
        }
    }

    return View(model);
}

在上面的代码中,我们在登录动作中传入了一个参数 returnUrl,它表示要返回的 URL。在登录成功后,如果 returnUrl 不为空,则我们通过 RedirectToAction 方法进行重定向。

注意,在重定向中,我们需要在第二个参数中指定返回 URL,如 RedirectToAction("Index", returnUrl)。这会将重定向 URL 设置为 /Controller/Action?returnUrl=,其中 returnUrl 参数值为传入的 returnUrl 参数。

因此,在返回视图中,我们可以在表单中添加一个隐藏字段来保存 returnUrl 参数,如下所示:

@using (Html.BeginForm("Login", "Account", new { returnUrl = ViewBag.ReturnUrl }, FormMethod.Post))
{
    @Html.AntiForgeryToken()

    
@Html.LabelFor(m => m.UserName, new { @class = "control-label" }) @Html.TextBoxFor(m => m.UserName, new { @class = "form-control" })
@Html.LabelFor(m => m.Password, new { @class =

相关内容

热门资讯

透视总结!潮友会鱼虾蟹辅助,战... 透视总结!潮友会鱼虾蟹辅助,战神辅助器,揭秘教程(有挂详细)-哔哩哔哩;无需打开直接搜索加薇1367...
今日焦点!互游辅助,大懒人斗十... 今日焦点!互游辅助,大懒人斗十四辅助,线上教程(真是有挂)-哔哩哔哩;最新版2026是一款经典耐玩的...
透视脚本!潮汕汇游戏辅助,we... 潮汕汇游戏辅助开挂教程视频分享装挂详细步骤在当今的网络游戏中,潮汕汇游戏辅助作为一种经典的娱乐方式,...
透视智能ai!牛总管辅助免费版... 透视智能ai!牛总管辅助免费版,欢聚水鱼脚本,细节揭秘(有挂头条)-哔哩哔哩>>您好:软件加1367...
我来教大家!天酷互娱有辅助工具... 较多好评“微乐万能挂官网”开挂(透视)辅助教程 了解更多开挂安装加(136704302)微信号是一款...
透视辅助!美猴王房卡辅助,wp... 透视辅助!美猴王房卡辅助,wpk安卓下载辅助,科技教程(有挂方法)-哔哩哔哩 了解更多开挂安装加(1...
重大通报!功夫川嘛辅助器是真的... 重大通报!功夫川嘛辅助器是真的假的,三加一免费辅助,软件教程(有挂存在)-哔哩哔哩;无需打开直接搜索...
推荐几款新版!蜀山挂件辅助,天... 您好:这款天天爱柳州辅助游戏是可以开挂的,确实是有挂的,很多玩家在这款天天爱柳州辅助游戏中打牌都会发...
一分钟揭秘!财神辅助模拟器,赣... 一分钟揭秘!财神辅助模拟器,赣牌圈挂安装图解,详细教程(有挂助手)-哔哩哔哩 了解更多开挂安装加(1...
我来教大家!微信小程序透视挂,... 我来教大家!微信小程序透视挂,道游互娱辅助,AI教程(确实有挂)-哔哩哔哩【无需打开直接搜索加薇13...