Подтвердить что ты не робот

System.Web.Http.Authorize и System.Web.Mvc.Authorize

Какой авторизованный атрибут?
System.Web.Http.Authorize
System.Web.Mvc.Authorize

using System.Web.Mvc      // or
using System.Web.Http  

Типичный контроллер

    [Authorize]
    public class SomeController : Controller

У нас есть контроллеры, аннотированные с помощью [Authorize] Я просто заметил, что из-за использования пространств имен аннотации технически относятся к различным классам атрибутов.

Проект содержит MVC-контроллеры и WEBAPI-контроллеры.

Какую пользу я должен использовать и почему? Какие проблемы могут возникнуть, если я не исправлю это?

4b9b3361

Ответ 1

Вы должны использовать System.Web.Http.Authorize для ApiController (API веб-API) и System.Web.Mvc.Authorize для Controller (MVC-контроллер). Поскольку среда запускает фильтры как часть обработки конвейера, и контроллеры ожидают применения правильного фильтра, если вы не используете соответствующий фильтр, авторизация не будет работать.