Freigeben über


CA2262: "MaxResponseHeadersLength" richtig festlegen

Eigentum Wert
Regel-ID CA2262
Titel MaxResponseHeadersLength ordnungsgemäß festlegen
Kategorie Benutzung
Fix is breaking or non-breaking Untrennbar
Standardmäßig in .NET 9 aktiviert Als Vorschlag

Verursachen

Die HttpClientHandler.MaxResponseHeadersLength-Eigenschaft wird auf einen Wert festgelegt, der größer als 128 ist.

Regelbeschreibung

Die HttpClientHandler.MaxResponseHeadersLength-Eigenschaft wird in Kilobyte gemessen, nicht in Byte. Die standardmäßige maximale Länge beträgt 64 KB, was für einen Großteil der Anwendungsfälle groß genug sein sollte. Wenn Sie die Eigenschaft auf einen Wert festlegen, der größer als 128 KB ist, kann dies auf ein Missverständnis der Einheiten dieser Eigenschaft zurückzuführen sein.

Wie man Verstöße behebt

Wenn Sie einen kleineren Wert festlegen möchten, aktualisieren Sie ihn auf den gewünschten Wert, der in Kilobyte gemessen wird.

Beispiel

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
}

Wann Fehler unterdrückt werden sollen

Es ist sicher, diese Warnung zu unterdrücken, wenn der große Wert beabsichtigt ist.