Compartilhar via


HttpEncoder Classe

Definição

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.

Aplica-se a

Confira também