基本上我想要实现的是像这样的功能:
根据我所了解的,通过更改Asp.net Identity的配置,可以将默认的url("/Account/Login")更改为其他url。然而这并不是我想要的。我想在某些特定情况下重定向到另一个url。
背景是,当用户因长时间不活动而注销登录时,有些重定向url是不需要的。比如说,一个用户正在从类似("~/Files/Pdf/123")的url下载文件,但是却被注销了。当他重新登录后,我不希望他被重定向到这个url。
[AllowAnonymous]
public ActionResult MyAction(string id)
{
if (Request.IsAuthenticated)
{
//do stuff
return View();
}
//if we come here, redirect to my custom action
return RedirectToAction("Action","Controller", new {@id=id});
}
但是我正在尝试使用自定义属性来实现同样的功能,类似于这样:
[Authorize(RedirectIfNotAuthorized="~/Controller/Action/id")]
public ActionResult MyAction(string id)
{
//do stuff
return View();
}
根据我所了解的,通过更改Asp.net Identity的配置,可以将默认的url("/Account/Login")更改为其他url。然而这并不是我想要的。我想在某些特定情况下重定向到另一个url。
背景是,当用户因长时间不活动而注销登录时,有些重定向url是不需要的。比如说,一个用户正在从类似("~/Files/Pdf/123")的url下载文件,但是却被注销了。当他重新登录后,我不希望他被重定向到这个url。