Для фильтра исключений, подобного этому.Объект исключения по умолчанию для WebApi2 для фильтра
public override void OnException(HttpActionExecutedContext context)
{
var resp = new HttpResponseMessage(HttpStatusCode.InternalServerError)
{
// what must I change here to return an object
// similar to the default exception handler?
Content = new StringContent("THIS IS MY ERROR"),
};
throw new HttpResponseException(resp);
}
Исключение причина возвращается клиенту Javascript является обычной строкой.
Когда исключение выбрасывается в по умолчанию контроллер вWebApi2
, объект причина по умолчанию возвращается содержит конфигурационные данные, заголовки и т.д.,. Я не могу найти пример того, как вернуть всю эту дополнительную информацию из моего фильтра исключений. Я попытался проверить источник без толку ...
$http.get('/mydata')
.catch(function(reason) { ... do stuff with reason })
.then(...);
Что мне нужно изменить, чтобы вернуть тот же ответ по умолчанию, а не только простой строки.
Content = new ... // what goes here.
У меня нет точного кода, но я сделал это несколько раз. Вам нужно вернуть обратно «IHttpActionResult». С этим вы можете либо отправить свои коды статуса HTTP из 500, 400, 401, 403 и т. Д. –
Большое спасибо: Fermat будет гордиться – Jim