HttpHeaders.TryAddWithoutValidation Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает значение, указывающее, были ли добавлены HttpHeaders в коллекцию новые заголовки и его значения без проверки значений заголовка.
Перегрузки
| Имя | Описание |
|---|---|
| TryAddWithoutValidation(String, IEnumerable<String>) |
Возвращает значение, указывающее, были ли указанные заголовки и его значения добавлены в HttpHeaders коллекцию без проверки предоставленных сведений. |
| TryAddWithoutValidation(String, String) |
Возвращает значение, указывающее, был ли указанный заголовок и его значение добавлены в HttpHeaders коллекцию без проверки предоставленных сведений. |
TryAddWithoutValidation(String, IEnumerable<String>)
- Исходный код:
- HttpHeaders.cs
- Исходный код:
- HttpHeaders.cs
- Исходный код:
- HttpHeaders.cs
- Исходный код:
- HttpHeaders.cs
- Исходный код:
- HttpHeaders.cs
Возвращает значение, указывающее, были ли указанные заголовки и его значения добавлены в HttpHeaders коллекцию без проверки предоставленных сведений.
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
Параметры
- name
- String
Заголовок, добавляемый в коллекцию.
- values
- IEnumerable<String>
Значения заголовка.
Возвращаемое значение
true Значение , если указанный заголовок name и values может быть добавлен в коллекцию; в противном случае false.
Комментарии
Этот метод выполняет проверку имени заголовка, возвращая false недопустимые имена. Имена заголовков применяются к допустимым http-маркерам, где маркер определяется как любой набор букв ASCII, цифр или символов из "!#$%&'*+-.^_`|~" набора, соответствующего определению RFC9110. Символы, отличные от ASCII, не допускаются в имени заголовка.
Этот метод не выполняет проверку значения заголовка. Предполагается, что значения, добавленные с помощью этого метода, являются доверенными, а другая логика приложения, например HttpClient, может неправильно работать, если они не хорошо сформированы.
Значения, добавленные без проверки, могут наблюдаться при перечислении коллекции или запроса для определенного имени заголовка, даже если вызывающий объект не использует NonValidated представление коллекции.
Caution
Этот метод никогда не должен использоваться с ненадежными значениями, если они не были достаточно проверены.
То, что представляет собой "достаточную" проверку, может отличаться по варианту использования. Как минимум, запрещают новые символы для правильности протокола, например if (value.ContainsAny('\r', '\n', '\0')) throw .... Эта проверка должна гарантировать, что серверное приложение видит значения таким же образом, как клиентское приложение, при этом сервер отвечает за правильное очистку собственных входных данных.
Чтобы защититься от атак, таких как контрабанда запросов, вызывающие настоятельно рекомендуется проверить, что эти значения не содержат новых символов.
Применяется к
TryAddWithoutValidation(String, String)
- Исходный код:
- HttpHeaders.cs
- Исходный код:
- HttpHeaders.cs
- Исходный код:
- HttpHeaders.cs
- Исходный код:
- HttpHeaders.cs
- Исходный код:
- HttpHeaders.cs
Возвращает значение, указывающее, был ли указанный заголовок и его значение добавлены в HttpHeaders коллекцию без проверки предоставленных сведений.
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
Параметры
- name
- String
Заголовок, добавляемый в коллекцию.
- value
- String
Содержимое заголовка.
Возвращаемое значение
true Значение , если указанный заголовок name и value может быть добавлен в коллекцию; в противном случае false.
Комментарии
Этот метод выполняет проверку имени заголовка, возвращая false недопустимые имена. Имена заголовков применяются к допустимым http-маркерам, где маркер определяется как любой набор букв ASCII, цифр или символов из "!#$%&'*+-.^_`|~" набора, соответствующего определению RFC9110. Символы, отличные от ASCII, не допускаются в имени заголовка.
Этот метод не выполняет проверку значения заголовка. Предполагается, что значения, добавленные с помощью этого метода, являются доверенными, а другая логика приложения, например HttpClient, может неправильно работать, если они не хорошо сформированы.
Значения, добавленные без проверки, могут наблюдаться при перечислении коллекции или запроса для определенного имени заголовка, даже если вызывающий объект не использует NonValidated представление коллекции.
Caution
Этот метод никогда не должен использоваться с ненадежными значениями, если они не были достаточно проверены.
То, что представляет собой "достаточную" проверку, может отличаться по варианту использования. Как минимум, запрещают новые символы для правильности протокола, например if (value.ContainsAny('\r', '\n', '\0')) throw .... Эта проверка должна гарантировать, что серверное приложение видит значения таким же образом, как клиентское приложение, при этом сервер отвечает за правильное очистку собственных входных данных.
Чтобы защититься от атак, таких как контрабанда запросов, вызывающие настоятельно рекомендуется проверить, что эти значения не содержат новых символов.