2014-11-25 4 views
3

Я работаю над веб-приложением ASP.NET, которое содержит как MVC, так и WEB API. Может ли кто-нибудь дать мне пример того, как использовать ApiController.Unauthorized Method в Web API. Я не уверен, какой параметр я должен передать в этот метод.WEB API 2.2: Неавторизованный метод ApiController

+0

вы хотите осуществить проверку подлинности? – Sandeep

+0

Hi Sandeep. Да, я хочу реализовать аутентификацию, но не хочу писать собственный фильтр проверки подлинности. – Dean

+0

вы можете создать обработчик сообщений для аутентификации. http://www.c-sharpcorner.com/UploadFile/dacca2/basic-authentication-in-web-api-based-on-user-role/ – Sandeep

ответ

3

Если ваш метод действия контроллера возвращает IHttpActionResult, вы можете использовать этот метод как возвращаемый тип.

return Unauthorized(); 

Вы также можете передать AuthenticationHeaderValue в качестве параметра этого метода, который представляет информацию аутентификации в авторизации, ProxyAuthorization, WWW-Authneticate и значениями заголовка Proxy-Authenticate.

Если ваш метод действия не возвращает IHttpActionResult, вы можете выбросить HttpResponseException в любом месте от действия вашего контроллера.

throw new HttpResponseException(HttpStatusCode.Unauthorized); 

Если вы хотите передать пользовательское сообщение затем использовать

var msg = new HttpResponseMessage(HttpStatusCode.Unauthorized) 
{ 
    ReasonPhrase = "Your message!" 
}; 
throw new HttpResponseException(msg); 
Смежные вопросы