В ASP.Net Core 2.0 я пытаюсь проверить заголовки входящих запросов в пользовательском промежуточном программном обеспечении.
Проблема в том, что я не знаю, как извлечь все заголовки пар ключ-значение. Заголовки, которые мне нужны, хранятся в защищенном свойстве
protected Dictionary<string, stringValues> MaybeUnknown
Мой класс промежуточного программного обеспечения пока выглядит так:
public class HeaderValidation
{
private readonly RequestDelegate _next;
public HeaderValidation(RequestDelegate next)
{
_next = next;
}
public async Task Invoke(HttpContext httpContext)
{
IHeaderDictionary headers = httpContext.Request.Headers; // at runtime headers are of type FrameRequestHeaders
// How to get the key-value-pair headers?
// "protected Dictionary<string, stringValues> MaybeUnknown" from headers is inaccessbile due to its protection level
// Casting headers as Dictionary<string, StringValues> results in null
await _next.Invoke(httpContext);
}
}
Моя цель — извлечь все заголовки запроса, а не только несколько выбранных заголовков, для которых я должен знать конкретные ключи.
var headerDictionary = new Dictionary<string, StringValues>(headers)
- person philipp-fx   schedule 16.03.2018