Phi*_*son 4 asp.net-mvc-5 asp.net-identity
我有两个 MVC 5 应用程序,据我所知,它们都是相同的(一个是从另一个创建的)。但是在其中之一上AllowAnonymous不起作用。
如果我filters.Add(new System.Web.Mvc.AuthorizeAttribute());在 中注册FilterConfig,则AllowAnonymous某个方法在我的AccountController->ResetPassword方法中不起作用,系统将重定向到我的登录页面。
如果我删除此代码,并把[Authorize]对AccountController类代替,一切都按你期望的那样。
我没有覆盖任何属性。
所以总而言之,一个项目可以处理过滤器。添加,另一个必须Authorize在控制器上,否则会AllowAnonymous被忽略。
有任何想法吗?
我现在已经找到了这个问题,并认为分享它可能很有用,因为当我早些时候查看时,我的确切问题似乎没有答案。
我遇到奇怪行为的原因是在没有工作的项目上,我有一个布局页面,其中有几个 @Html.Action 调用。这些调用是针对在过滤器添加授权属性时授权的控制器。因此,为了让 AllowAnonymous 处理我的方法并一直显示页面,AllowAnonymous 还需要添加到从 Html.Action 调用的子方法中。
这不是很明显,因为在调试中,使用 AllowAnonymous 的主要 Action 正在被调用!
希望这可以帮助某人。
| 归档时间: |
|
| 查看次数: |
895 次 |
| 最近记录: |