这是一个 .NET 4.5 C# MVC + WebAPI 4 项目。我正在使用 WebApiDoodle 2.0.1 BasicAuthenticationHandler 来使用 MVC + WebAPI 并排安全性,如此处所述。
在我的应用程序启动中,我添加了消息处理程序:
globalConfig.MessageHandlers.Add(new {MyClass Derived from BasicAuthenticationHandler}());
MVC 控制器工作正常(类派生自 System.Web.Mvc.Controller
)。
但是,WebApi 控制器(派生自System.Web.Http.ApiController
)忽略该System.Web.Http.AllowAnonymous
属性。他们基本上想要验证/授权一切。
如果我从 globalConfig 中删除自定义消息处理程序,WebAPI 将按预期工作,AllowAnonymous 属性允许提供匿名请求(并且具有 [Authorize] 的操作被拒绝)。
任何想法可能会发生什么?谢谢。