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.