HttpHeaders.TryAddWithoutValidation Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt einen Wert zurück, der HttpHeaders angibt, ob der Auflistung ein neuer Header und dessen Werte hinzugefügt wurden, ohne die Headerwerte zu überprüfen.
Überlädt
| Name | Beschreibung |
|---|---|
| TryAddWithoutValidation(String, IEnumerable<String>) |
Gibt einen Wert zurück, der angibt, ob der angegebene Header und seine Werte der HttpHeaders Auflistung hinzugefügt wurden, ohne die bereitgestellten Informationen zu überprüfen. |
| TryAddWithoutValidation(String, String) |
Gibt einen Wert zurück, der angibt, ob der angegebene Header und sein Wert der HttpHeaders Auflistung hinzugefügt wurden, ohne die bereitgestellten Informationen zu überprüfen. |
TryAddWithoutValidation(String, IEnumerable<String>)
- Quelle:
- HttpHeaders.cs
- Quelle:
- HttpHeaders.cs
- Quelle:
- HttpHeaders.cs
- Quelle:
- HttpHeaders.cs
Gibt einen Wert zurück, der angibt, ob der angegebene Header und seine Werte der HttpHeaders Auflistung hinzugefügt wurden, ohne die bereitgestellten Informationen zu überprüfen.
public:
bool TryAddWithoutValidation(System::String ^ name, System::Collections::Generic::IEnumerable<System::String ^> ^ values);
public bool TryAddWithoutValidation(string name, System.Collections.Generic.IEnumerable<string> values);
public bool TryAddWithoutValidation(string name, System.Collections.Generic.IEnumerable<string?> values);
member this.TryAddWithoutValidation : string * seq<string> -> bool
Public Function TryAddWithoutValidation (name As String, values As IEnumerable(Of String)) As Boolean
Parameter
- name
- String
Die Kopfzeile, die der Auflistung hinzugefügt werden soll.
- values
- IEnumerable<String>
Die Werte der Kopfzeile.
Gibt zurück
true wenn die angegebene Kopfzeile name und values der Auflistung hinzugefügt werden kann; andernfalls false.
Hinweise
Diese Methode führt die Überprüfung des Headernamens durch, die für ungültige Namen zurückgegeben wird false . Kopfzeilennamen werden erzwungen, um gültige HTTP-Token zu sein, wobei ein Token als beliebiger Satz von ASCII-Buchstaben, Ziffern oder Symbolen aus dem "!#$%&'*+-.^_`|~" Satz definiert ist, die der Definition RFC9110 entsprechen. Nicht-ASCII-Zeichen sind in einem Headernamen nicht zulässig.
Diese Methode führt keine Headerwertüberprüfung durch. Werte, die über diese Methode hinzugefügt werden, werden als vertrauenswürdig angenommen, und andere Anwendungslogik, z HttpClient. B. , kann falsch sein, wenn sie nicht gut gebildet sind.
Werte, die ohne Überprüfung hinzugefügt werden, können beim Aufzählen der Auflistung oder Abfrage des spezifischen Headernamens beobachtet werden, auch wenn der Aufrufer die Ansicht der Auflistung nicht verwendet NonValidated .
Vorsicht
Diese Methode darf niemals mit nicht vertrauenswürdigen Werten verwendet werden, es sei denn, sie wurden anderweitig ausreichend validiert.
Was eine "ausreichende" Überprüfung darstellt, kann je nach Anwendungsfall variieren. Verbieten Sie mindestens Neuzeilenzeichen für die Protokollkorrektur, z if (value.ContainsAny('\r', '\n', '\0')) throw .... B. . . Diese Überprüfung sollte sicherstellen, dass die Serveranwendung Werte auf die gleiche Weise wie die Clientanwendung sieht, wobei der Server nun dafür verantwortlich ist, seine eigenen Eingaben ordnungsgemäß zu bereinigen.
Um Angriffe wie z. B. den Schmuggel von Anfragen zu schützen, werden Anrufer dringend ermutigt, zu überprüfen, ob diese Werte keine Neuenlinezeichen enthalten.
Gilt für:
TryAddWithoutValidation(String, String)
- Quelle:
- HttpHeaders.cs
- Quelle:
- HttpHeaders.cs
- Quelle:
- HttpHeaders.cs
- Quelle:
- HttpHeaders.cs
Gibt einen Wert zurück, der angibt, ob der angegebene Header und sein Wert der HttpHeaders Auflistung hinzugefügt wurden, ohne die bereitgestellten Informationen zu überprüfen.
public:
bool TryAddWithoutValidation(System::String ^ name, System::String ^ value);
public bool TryAddWithoutValidation(string name, string value);
public bool TryAddWithoutValidation(string name, string? value);
member this.TryAddWithoutValidation : string * string -> bool
Public Function TryAddWithoutValidation (name As String, value As String) As Boolean
Parameter
- name
- String
Die Kopfzeile, die der Auflistung hinzugefügt werden soll.
- value
- String
Der Inhalt der Kopfzeile.
Gibt zurück
true wenn die angegebene Kopfzeile name und value der Auflistung hinzugefügt werden kann; andernfalls false.
Hinweise
Diese Methode führt die Überprüfung des Headernamens durch, die für ungültige Namen zurückgegeben wird false . Kopfzeilennamen werden erzwungen, um gültige HTTP-Token zu sein, wobei ein Token als beliebiger Satz von ASCII-Buchstaben, Ziffern oder Symbolen aus dem "!#$%&'*+-.^_`|~" Satz definiert ist, die der Definition RFC9110 entsprechen. Nicht-ASCII-Zeichen sind in einem Headernamen nicht zulässig.
Diese Methode führt keine Headerwertüberprüfung durch. Werte, die über diese Methode hinzugefügt werden, werden als vertrauenswürdig angenommen, und andere Anwendungslogik, z HttpClient. B. , kann falsch sein, wenn sie nicht gut gebildet sind.
Werte, die ohne Überprüfung hinzugefügt werden, können beim Aufzählen der Auflistung oder Abfrage des spezifischen Headernamens beobachtet werden, auch wenn der Aufrufer die Ansicht der Auflistung nicht verwendet NonValidated .
Vorsicht
Diese Methode darf niemals mit nicht vertrauenswürdigen Werten verwendet werden, es sei denn, sie wurden anderweitig ausreichend validiert.
Was eine "ausreichende" Überprüfung darstellt, kann je nach Anwendungsfall variieren. Verbieten Sie mindestens Neuzeilenzeichen für die Protokollkorrektur, z if (value.ContainsAny('\r', '\n', '\0')) throw .... B. . . Diese Überprüfung sollte sicherstellen, dass die Serveranwendung Werte auf die gleiche Weise wie die Clientanwendung sieht, wobei der Server nun dafür verantwortlich ist, seine eigenen Eingaben ordnungsgemäß zu bereinigen.
Um Angriffe wie z. B. den Schmuggel von Anfragen zu schützen, werden Anrufer dringend ermutigt, zu überprüfen, ob diese Werte keine Neuenlinezeichen enthalten.