HandleUnauthorizedRequest

HandleUnauthorizedRequest

我有一个 AuthorizeAttribute 的自定义实现,它处理未经授权的用户访问,我覆盖了以下方法: AuthorizeCore ,然后是 HandleUnauthorizedRequest

  • 检查用户访问的逻辑在 AuthorizeCore.
  • 重定向到 Controller / Action 在 HandleUnauthorizedRequest 中。

  • 现在,我想知道如何将数据从AuthorizeCore发送到 Controller /操作? 按照这个顺序:
  • AuthorizeCore创建一条消息。
  • HandleUnauthorizedRequest 执行重定向并传递先前创建的消息。
  • Controller / Action 接收消息。

  • 注意: 我不想通过 QueryString 接收消息。

    最佳答案

    有几种方法可以做到这一点。您可以尝试添加:

    filterContext.Controller.TempData["auth_fail_message"] = "Error message";
    

    在 HandleUnauthorizedRequest 方法中。然后您可以从错误操作访问临时数据。
    您也可以使用 asp.net session 对象。

    关于c# - 在 ASP.NET MVC4 中将数据从 AuthorizeCore 传递到 HandleUnauthorizedRequest 然后是 Action,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13608070/

    10-12 19:46