HttpEncoder Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece lógica de codificação e decodificação.
public ref class HttpEncoder
public class HttpEncoder
type HttpEncoder = class
Public Class HttpEncoder
- Herança
-
HttpEncoder
- Derivado
Comentários
A classe contém a lógica de codificação e decodificação usada por métodos em classes como HttpUtility, HttpServerUtilitye HttpResponseHeader.
Você pode herdar da HttpEncoder classe e substituir seu comportamento para personalizar o comportamento padrão de codificação e decodificação de ASP.NET. Em seguida, defina a EncoderType propriedade da HttpRuntimeSection classe para configurar sua classe personalizada.
Uma classe personalizada para codificação e decodificação que deriva HttpEncoder pode substituir o comportamento interno de codificação e decodificação de ASP.NET ou alterar apenas aspectos selecionados dela.
Você pode configurar o tipo de codificação personalizado para ASP.NET substituir ou complementar o seguinte comportamento de codificação:
Codificação HTML
Codificação de atributo HTML
Codificação de URL
Codificação de caminho de URL
Codificação do nome do cabeçalho HTTP e do valor do cabeçalho
Por padrão, ASP.NET aplicativos são configurados para usar o AntiXssEncoder tipo para toda a codificação de saída.
O exemplo a seguir de um arquivo de Web.config no nível do aplicativo mostra como o AntiXssEncoder tipo é definido para um aplicativo ASP.NET:
<httpRuntime requestValidationMode="4.5" encoderType="System.Web.Security.AntiXss.AntiXssEncoder, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
A configuração no exemplo define a AntiXssEncoder classe para executar toda a codificação de saída no aplicativo. Para obter mais informações, consulte a visão geral da AntiXssEncoder classe.
Notas aos Herdeiros
Quando você cria uma classe de codificador personalizado e substitui os métodos base da classe base, o codificador derivado pode gerar uma exceção de qualquer um dos métodos substituídos. No entanto, nos seguintes casos, gerar tal exceção pode levar a um comportamento inesperado em ASP.NET:
Se ASP.NET estiver renderizando uma página de erro causada por uma exceção sem tratamento gerada de um codificador personalizado, ASP.NET não tentará codificar sua saída de erro chamando o codificador personalizado. Isso evita condições de erro recursivas.
Quando ASP.NET está enviando cabeçalhos HTTP para o IIS, ASP.NET não tem nenhum provisionamento para exceções sem tratamento. Portanto, a página de erro de ASP.NET padrão será renderizada (se as configurações permitirem que essa página seja exibida).
Construtores
| Nome | Description |
|---|---|
| HttpEncoder() |
Inicializa uma nova instância da classe HttpEncoder. |
Propriedades
| Nome | Description |
|---|---|
| Current |
Obtém ou define o HttpEncoder tipo que será usado em um aplicativo. |
| Default |
Obtém uma referência ao codificador padrão para ASP.NET. |
Métodos
| Nome | Description |
|---|---|
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| HeaderNameValueEncode(String, String, String, String) |
Codifica um nome de cabeçalho e um valor em uma cadeia de caracteres que pode ser usada como um cabeçalho HTTP. |
| HtmlAttributeEncode(String, TextWriter) |
Codifica um valor de entrada em uma cadeia de caracteres que pode ser inserida em um atributo HTML delimitado usando aspas simples ou duplas. |
| HtmlDecode(String, TextWriter) |
Decodifica um valor de uma cadeia de caracteres codificada em HTML. |
| HtmlEncode(String, TextWriter) |
Codifica uma cadeia de caracteres em uma cadeia de caracteres codificada em HTML. |
| JavaScriptStringEncode(String) |
Codifica uma cadeia de caracteres. |
| MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
| ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
| UrlEncode(Byte[], Int32, Int32) |
Codifica uma matriz de caracteres que não são permitidos em uma URL em uma entidade de caractere hexadecimal equivalente. |
| UrlPathEncode(String) |
Codifica uma subseção de uma URL. |