Я пытаюсь зарегистрировать заголовки ответов HTTP моего проекта веб-API.
Проект разработан на VS2012, .NET 4.5 и ASP.NET MVC 4.
Я написал подкласс DelegatingHandler
следующим образом:
public class LoggingHandler : DelegatingHandler
{
protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
{
// Execute the request
return base.SendAsync(request, cancellationToken).ContinueWith(task =>
{
var response = task.Result;
return response;
});
}
}
Однако проблема в том, что я не могу получить значения заголовков из файла response
. response.Headers
— это пустая коллекция, response.Content.Headers
не содержит ничего, кроме ключа с именем Content-Type
, а HttpContext.Current
— это null
.
Я видел код WebAPIContrib, который используйте ту же логику для регистрации заголовков, но их код тоже не работает.
Итак, как мне отслеживать заголовки ответов HTTP в проекте веб-API?