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 de 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 , HttpServerUtility e HttpResponseHeader .
Você pode herdar da HttpEncoder classe e substituir seu comportamento para personalizar a codificação padrão e decodificar o comportamento de ASP.net. Em seguida, você define a EncoderType propriedade da HttpRuntimeSection classe para configurar sua classe personalizada.
Uma classe personalizada para codificação e decodificação que deriva de HttpEncoder pode substituir o comportamento interno de codificação e decodificação de ASP.net ou alterar apenas os aspectos selecionados dela.
Você pode configurar o tipo de codificação personalizado para no ASP.NET para 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 de nome de cabeçalho HTTP e de valor de cabeçalho
Por padrão, os aplicativos ASP.NET 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"/>
O parâmetro de 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 AntiXssEncoder visão geral da 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, lançar essa exceção poderia levar a um comportamento inesperado no ASP.NET:
-Se ASP.NET estiver renderizando uma página de erro causada por uma exceção sem tratamento que foi gerada de um codificador personalizado, o 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, o ASP.NET não tem provisão para exceções sem tratamento. Portanto, a página de erro ASP.NET padrão será renderizada (se as definições de configuração permitirem que essa página seja exibida).
Construtores
HttpEncoder() |
Inicializa uma nova instância da classe HttpEncoder. |
Propriedades
Current |
Obtém ou define o tipo HttpEncoder que será usado em um aplicativo. |
Default |
Obtém uma referência ao codificador padrão do ASP.NET. |
Métodos
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 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 por aspas simples ou duplas. |
HtmlDecode(String, TextWriter) |
Decodifica um valor de uma cadeia de caracteres codificada em HTML. |
HtmlEncode(String, TextWriter) |
Converte 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 Object atual. (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 caracteres hexadecimais equivalente. |
UrlPathEncode(String) |
Codifica uma subseção de uma URL. |