我的ASP.NET MVC应用程序正在使用[System.Web.Mvc.Authorize]
的表单身份验证。我想使用[System.Web.Http.Authorize]
属性来保护我的Web API控制器,因为我用我的MVC控制器中的HttpClient
调用它我已经实现了一个自定义委托处理程序,如下面的帖子中所示:
ASP.NET MVC 4 Web API Authentication with Membership Provider
调试时我可以看到主体已设置且用户具有正确的角色,但我仍然被重定向到登录页面?
所以基本上当我登录并使用浏览器访问WebAPI操作时一切正常(如果我从我的视图中使用AJAX),但是当我在我的控制器中使用HttpClient
时(我知道这是一个新的请求)使用基本身份验证并设置主体我总是被重定向。
我尝试了很多解决方案/解决方法,我总是被重定向到登录页面。 任何人都有自己的想法。
答案 0 :(得分:0)
以下是解释:
System-web-http-authorize x System-web-mvc-authorize
另一个有趣的一点是您使用自定义授权。我做到了它并且有效。以下示例:
Customized authorization Mvc 4
祝你好运