В моем WebAPI, если я обнаруживаю плохую авторизацию, я использую следующее:Возврат 401 Неавторизованный из WebAPI
[HttpPost]
public HttpResponseMessage CustomerQuotationComplete(Guid apiKey, int EnquiryId, int SiteId, bool accepted)
{
if (IsRequestAuthorized())
{
...
}
else
{
var msg = new HttpResponseMessage(HttpStatusCode.Unauthorized) { ReasonPhrase = "Bad Authentication" };
throw new HttpResponseException(msg);
}
}
Однако, на самом деле, я получаю ответ от 302 Найденный, а не 401 Несанкционированный.
Так что я делаю неправильно?
Это делает то же самое, что и выше. – Matt
Имея аналогичный код, он возвращает http 401. Попробуйте посмотреть, не используете ли вы [Глобальные фильтры или спецификацию OWIN] (http://stackoverflow.com/questions/20149750/owin-unauthorised-webapi-call- return-login-page-rather-than-401) для входа в систему или для других целей, которые будут называться методом вашего контроллера. Попробуйте также простой пустой проект, чтобы подтвердить, что это связано с настройкой вашего проекта. – bsoulier