Поделиться через


CA2262: правильно задать значение параметра 'MaxResponseHeadersLength'

Свойство Ценность
идентификатор правила CA2262
Заголовок Задайте MaxResponseHeadersLength правильно
категория Использование
исправление является критическим или неразрывным Неразрывная
включен по умолчанию в .NET 9 Как предложение

Причина

Свойство HttpClientHandler.MaxResponseHeadersLength имеет значение больше 128.

Описание правила

Свойство HttpClientHandler.MaxResponseHeadersLength измеряется в килобайтах, а не в байтах. Максимальная длина по умолчанию составляет 64 КБ, что должно быть достаточно большим для большинства вариантов использования. Если для свойства задано значение больше 128 килобайт, это может быть вызвано недоразумением единиц этого свойства.

Устранение нарушений

Если вы намерены задать меньшее значение, обновите его до требуемого значения, измеряемого в килобайтах.

Пример

HttpClientHandler handler = new()
{
    // Violation
    MaxResponseHeadersLength = 512

    // Fix (it is not possible to specify a limit lower than 1 KB)
    MaxResponseHeadersLength = 1
};

Dim handler As New HttpClientHandler With {
    ' Violation
    .MaxResponseHeadersLength = 512

    ' Fix (it is not possible to specify a limit lower than 1 KB)
    .MaxResponseHeadersLength = 1
}

Когда подавлять ошибки

Это предупреждение можно подавить, если большое значение предполагается.