HttpEncoder Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет логику кодирования и декодирования.
public ref class HttpEncoder
public class HttpEncoder
type HttpEncoder = class
Public Class HttpEncoder
- Наследование
-
HttpEncoder
- Производный
Комментарии
Класс содержит логику кодирования и декодирования, используемую методами в таких классах HttpUtility , как, HttpServerUtility и HttpResponseHeader .
Можно наследовать от HttpEncoder класса и переопределить его поведение для настройки кодировки по умолчанию и декодирования ASP.NET. Затем задайте EncoderType свойство HttpRuntimeSection класса, чтобы настроить пользовательский класс.
Пользовательский класс для кодирования и декодирования, производного от, HttpEncoder может переопределить встроенное поведение кодирования и декодирования ASP.NET или изменить только выбранные аспекты.
Можно настроить пользовательский тип кодирования для в ASP.NET, чтобы заменить или дополнить следующее поведение кодировки:
Кодирование HTML
Кодировка атрибута HTML
Кодирование URL-адреса
Кодирование URL-пути
Имя заголовка HTTP и кодировка значений заголовка
По умолчанию ASP.NET приложения настроены на использование AntiXssEncoder типа для всех кодировок вывода.
В следующем примере из файла Web.config уровня приложения показано, как AntiXssEncoder Тип задается для приложения ASP.NET:
<httpRuntime requestValidationMode="4.5" encoderType="System.Web.Security.AntiXss.AntiXssEncoder, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
Параметр конфигурации в примере задает AntiXssEncoder класс для выполнения всех кодировок вывода в приложении. Дополнительные сведения см. в разделе AntiXssEncoder Общие сведения о классе.
Примечания для тех, кто наследует этот метод
При создании пользовательского класса кодировщика и переопределении базовых методов базового класса производный кодировщик может вызвать исключение из любого переопределенного метода. Однако в следующих случаях создание такого исключения может привести к непредвиденному поведению в ASP.NET:
— Если ASP.NET выводит страницу ошибки, вызванную необработанным исключением, которое было создано из пользовательского кодировщика, ASP.NET не пытается кодировать вывод ошибок путем вызова пользовательского кодировщика. Это позволяет избежать рекурсивных условий возникновения ошибок.
— Когда ASP.NET отправляет заголовки HTTP в службы IIS, ASP.NET не предоставляет необработанные исключения. Поэтому будет отображена стандартная страница ошибки ASP.NET (если параметры конфигурации позволяют отображать эту страницу).
Конструкторы
HttpEncoder() |
Инициализирует новый экземпляр класса HttpEncoder. |
Свойства
Current |
Получает или задает тип HttpEncoder, который будет использован в приложении. |
Default |
Получает ссылку на кодировщик ASP.NET по умолчанию. |
Методы
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
HeaderNameValueEncode(String, String, String, String) |
Кодирует имя и значение заголовка в строку, которая может быть использована в HTTP-заголовке. |
HtmlAttributeEncode(String, TextWriter) |
Кодирует входящее значение в строку, которая может быть вставлена в HTML-атрибут, ограниченный одинарными или двойными кавычками. |
HtmlDecode(String, TextWriter) |
Декодирует значение из строки в кодировке HTML. |
HtmlEncode(String, TextWriter) |
Зашифровывает строку в строку в кодировке HTML. |
JavaScriptStringEncode(String) |
Кодирует строку. |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
UrlEncode(Byte[], Int32, Int32) |
Кодирует массив недопустимых в URL-адресе символов в шестнадцатеричный эквивалент сущности знака. |
UrlPathEncode(String) |
Кодирует часть URL-адреса. |