在mvc 4应用程序中,我需要将用户重定向到主页面,登录和注册页面除外。
每当请求到达时,除了登录或注册,我都需要将用户永久重定向到主页。
例如
www.example.com/home/contact
应重定向到 www.example.com
只有这两个地址可供用户使用:
www.example.com/user/login
www.example.com/user/register
我怎样才能以最短的方式处理这个问题。我不想改变所有的控制器方法。
答案 0 :(得分:2)
您创建重定向控制器
public class RedirectController : Controller
{
public ActionResult News()
{
return RedirectPermanent("/News");
}
}
在你的RouteConfig中为你的网址制作路线
routes.MapRoute(
name: "userlogin",
url: "/user/login",
defaults: new { controller = "User", action = "Login" }
);
routes.MapRoute(
name: "UserRegister",
url: "/user/register",
defaults: new { controller = "User", action = "register" }
);
MapRoute("Default", new {controller="Redirect", action="News"});
这样一切都会重定向,除了你的2个网址。
答案 1 :(得分:0)
在javascript
我建议使用此方法。
window.location.replace(...)