2

По умолчанию ASP.NET Web Api Core Поведение неавторизованного запроса - отправить 401/403 error с пустым содержимым. Я хотел бы изменить его, указав какой-то ответ Json, указав ошибку.Как сменить веб-Api Core несанкционированное поведение

Но я изо всех сил стараюсь найти подходящее место, где я могу внести эти изменения. Официальная документация не нужна (прочитайте все). У меня было предположение, что, возможно, я мог бы поймать UnathorizedException в моем фильтре исключений/промежуточном программном обеспечении, но это не сработало (я думаю, что он обрабатывается на уровне авторизации или даже не бросается вообще).

Итак, мой вопрос заключается в том, как я могу настроить поведение ответа в случае несанкционированного запроса.

+0

Ознакомьтесь с методами расширения, такими как 'app.UseStatusCodePagesWithRedirects' и' app.UseStatusCodePages' – Developer

+0

'https: // docs.microsoft.com/en-us/aspnet/core/security/authentication/cookie' перейти к этому .. . Это может помочь –

+0

@ Разработчик, кажется, специфичен для MVC, а не для Web Api – SiberianGuy

ответ

1

Вы можете использовать это, если используете аутентификацию cookie.

 app.UseCookieAuthentication(new CookieAuthenticationOptions() 
     { 
      AccessDeniedPath = "WhereEverYou/WantToGo" 
     }); 

Эта ручка как запрещена, так и неавторизирована.

+1

Вопрос о веб-Api, где токены используются для аутентификации – SiberianGuy