我的 ASP.NET MVC 应用程序使用带有[System.Web.Mvc.Authorize]
. 我想使用[System.Web.Http.Authorize]
属性来保护我的 Web API 控制器,因为我是HttpClient
从我的 MVC 控制器调用它,所以我已经实现了一个自定义委托处理程序,如下面的帖子中的那个:
使用成员资格提供程序的 ASP.NET MVC 4 Web API 身份验证
调试时,我可以看到主体已设置并且用户具有正确的角色,但我仍然被重定向到登录页面?
因此,基本上当我登录并使用浏览器访问 WebAPI 操作时,一切正常(就像我从我的视图中使用 AJAX 一样),但是当我HttpClient
在控制器内部使用基本身份验证时(我知道这是一个具有不同上下文的新请求)和设置我总是被重定向的主体。
我已经尝试了很多解决方案/解决方法,但我总是被重定向到登录页面。任何人都有想法。