我们有一个需要用户认证才能使用的应用程序。我们使用自定义操作过滤器属性实现了这一点。
这是我们正在使用的过滤器。
public class AuthFilter : ActionFilterAttribute, IActionFilter
{
public AuthFilter()
{
}
public override void OnActionExecuted(ActionExecutedContext context)
{
}
public override void OnActionExecuting(ActionExecutingContext context)
{
var cacheKey = "user-session";
var isValidAuth = context.HttpContext.Session.GetString(cacheKey);
if (string.IsNullOrEmpty(isValidAuth))
{
context.Result = new RedirectToRouteResult(new RouteValueDictionary(new { action = "Login", controller = "Authentication" }));
}
}
}
这就是过滤器的调用方式
[AuthFilter]
public IActionResult Overview()
{
return View();
}
我们正在多个地方使用此AuthFilter
。登录后,我们需要将用户重定向到最初请求的页面用户。
有没有办法实现这一目标?