asp.net – 当我试图强制401时,自定义授权过滤器总是返回404
发布时间:2020-07-31 18:47:06 所属栏目:asp.Net 来源:互联网
导读:我正在尝试编写自己的授权属性,在那里我使用CustomAuthorization属性对任何web api方法执行一些自定义检查. 我的代码如下: [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = false, Inherited = false)] public class C
|
我正在尝试编写自己的授权属性,在那里我使用CustomAuthorization属性对任何web api方法执行一些自定义检查. 我的代码如下: [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method,AllowMultiple = false,Inherited = false)]
public class CustomAuthorization : AuthorizationFilterAttribute
{
public override void OnAuthorization(AuthorizationContext context)
{
//// Attempt 1 - 404 error.
//// Doesnt block method with this attribute from executing (not desired behaviour).
//context.HttpContext.Response.StatusCode = 401;
//return;
//// Attempt 2 - 404 result.
//// Code with attribute doesnt execute (desired).
//// Error thrown says: An exception of type 'System.Web.Http.HttpResponseException' occurred in <namespace> but was not handled in user code
//// Additional information: Processing of the HTTP request resulted in an exception. Please see the HTTP response returned by the 'Response' property of this exception for details.
//throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.Unauthorized));
// Attempt 3 - 404 result.
// Code with attribute doesnt execute (desired).
context.Result = new HttpUnauthorizedResult();
}
}
我遇到的问题是我从网络API而不是预期的401获得404响应.我做错了什么? 这是asp.net核心1. 提前致谢! 解决方法这可能是因为您有身份验证设置重定向到401响应的登录页面,并且找不到登录页面(发生在我身上).(编辑:长春站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- ASP.NET MVC4安全性,身份验证和授权
- asp.net-mvc – ASP.NET MVC中的替代用户管理
- asp.net-mvc – ASP.NET MVC会话超时,绝对还是滑动?
- asp-classic – 如何使用AES在VBScript中进行加密?
- Asp.Net MVC路由表和控制器操作
- asp.net-mvc – AppDomain.GetAssemblies和BuildManager.Ge
- asp.net-core – 我为什么要选择带有.Net核心的ASP.NET Cor
- asp.net – Web Forms MVP项目有哪些好的资源?
- .net – IIS 6.0和ASPX中的404自定义错误不起作用
- asp.net-mvc-4 – MVC4不要在重定向上使用主布局
推荐文章
站长推荐
热点阅读
