SocketsHttpHandler.RequestHeaderEncodingSelector Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает обратный вызов, который выбирает Encoding значения заголовка запроса.
public:
property System::Net::Http::HeaderEncodingSelector<System::Net::Http::HttpRequestMessage ^> ^ RequestHeaderEncodingSelector { System::Net::Http::HeaderEncodingSelector<System::Net::Http::HttpRequestMessage ^> ^ get(); void set(System::Net::Http::HeaderEncodingSelector<System::Net::Http::HttpRequestMessage ^> ^ value); };
public System.Net.Http.HeaderEncodingSelector<System.Net.Http.HttpRequestMessage>? RequestHeaderEncodingSelector { get; set; }
member this.RequestHeaderEncodingSelector : System.Net.Http.HeaderEncodingSelector<System.Net.Http.HttpRequestMessage> with get, set
Public Property RequestHeaderEncodingSelector As HeaderEncodingSelector(Of HttpRequestMessage)
Значение свойства
Обратный вызов селектора кодирования заголовков, который выбирает Encoding значение для указанного имени заголовка запроса или null указывает поведение по умолчанию.
Исключения
Операция уже запущена в текущем экземпляре.
Текущий экземпляр удален.
Комментарии
При указании кодировки обычно предполагается использовать одну из следующих схем кодирования: ASCII, Latin1или UTF8. Другие схемы кодирования могут быть подвержены запросу атак контрабанды.
Предостережение
Фиксированные схемы кодирования с несколькими байтами, в частности (например, илиUTF32) никогда не должны использоваться, так как их двоичное представление, скорее всего, Unicode будет неправильно интерпретировано и разорвать протокол. Например, часть ✊ может быть интерпретирована как новая строка (\n), завершающая значение заголовка.
При указании кодировки необходимо убедиться, что значения представляются через кодировку, и сервер согласен с используемой кодировкой. В противном случае значения будут повреждены. Например, так как любой набор байтов считается допустимой последовательностью Latin1, сервер, отвечающий с значениями заголовков uTF-8, может видеть его ответы автоматически повреждены.