AntiXssEncoder.HtmlEncode Método

Definición

Codifica la cadena especificada para su uso como texto en el marcado HTML.

Sobrecargas

Nombre Description
HtmlEncode(String, Boolean)

Codifica la cadena especificada para su uso como texto en el marcado HTML y, opcionalmente, especifica si se deben usar entidades con nombre HTML 4.0.

HtmlEncode(String, TextWriter)

Codifica la cadena especificada para su uso como texto en el marcado HTML y genera la cadena mediante el escritor de texto especificado.

HtmlEncode(String, Boolean)

Codifica la cadena especificada para su uso como texto en el marcado HTML y, opcionalmente, especifica si se deben usar entidades con nombre HTML 4.0.

public:
 static System::String ^ HtmlEncode(System::String ^ input, bool useNamedEntities);
public static string HtmlEncode(string input, bool useNamedEntities);
static member HtmlEncode : string * bool -> string
Public Shared Function HtmlEncode (input As String, useNamedEntities As Boolean) As String

Parámetros

input
String

Cadena que se va a codificar.

useNamedEntities
Boolean

true para usar entidades con nombre HTML 4.0 para determinadas codificaciones de caracteres; false para codificar mediante solo &#DECIMAL; notación.

Devoluciones

Cadena codificada.

Comentarios

Este método codifica todos los caracteres excepto los que se encuentran en la lista segura. Los caracteres se codifican mediante &#DECIMAL; notación.

Note

Coloque comillas dobles (" ") o comillas simples (' ') alrededor de la cadena resultante antes de agregarla a una página.

En la tabla siguiente se enumeran los caracteres seguros predeterminados. Todos los caracteres proceden de los controles Unicode C0 y el intervalo de caracteres latino básico a menos que se indique en la columna Descripción.

Caracteres Description
A-Z Caracteres alfabéticos latinos mayúsculas
a-z Caracteres alfabéticos latinos en minúsculas
0-9 Números
(Espacio) Espacio
! Signo de exclamación
# Signo numérico, hash
$ Signo de dólar
% Signo de porcentaje
( ) Paréntesis
* Asterisk
+ Signo más
, Coma
- Guion, menos
. Punto, punto, parada completa
/ Barra diagonal
: Dos puntos
; Punto y coma
= Signo igual
? Signo de interrogación
@ Comercial en
[ ] Corchetes
\ Barra invertida
^ Acento circunflejo
_ Guion bajo
` Énfasis grave
{ } Llaves, llaves
| Línea vertical
~ Tilde
0x00A1: 0x00AC Caracteres especiales entre 0x00A1 (decimal 161) y 0x00AC (172 decimales) de los controles C1 Unicode y el intervalo de caracteres complemento latin-1 . Los caracteres de este intervalo se codifican cuando useNamedEntities es true.
0x00AE: 0x00FF Caracteres especiales entre 0x00AE (174 decimales) y 0x00FF (255 decimales) de los controles C1 Unicode y el intervalo de caracteres complemento latin-1 . Los caracteres de este intervalo se codifican cuando useNamedEntities es true.
0x0100: 0x017F Caracteres entre 0x0100 (256 decimales) y 0x017F (383 decimales). (Intervalo de caracteres Unicode Latin-Extended-A ).
0x0180: 0x024F Caracteres entre 0x0180 (384 decimales) y 0x024F (591 decimal). (Intervalo de caracteres Unicode Latin-Extended-B ).
0x0250: 0x02AF Caracteres entre 0x0250 (592 decimales) y 0x02AF (687 decimales). (Intervalo de caracteres de extensiones IPA Unicode).
0x02B0: 0x02FF Caracteres entre 0x02B0 (688 decimales) y 0x02FF (767 decimales). (Intervalo de caracteres modificadores de espaciado Unicode).
0x0300: 0x036F Caracteres entre 0x0300 (768 decimales) y 0x036F (879 decimales). (Intervalo de caracteres de marcas diacríticas unicode combinado).

En la tabla siguiente se enumeran ejemplos de entradas y las salidas codificadas correspondientes.

Entrada Output
alert('XSS Attack!'); alert('XSS Attack!');
<script>alert('XSS Attack!');</script> &lt;script&gt;alert(&#39;XSS Attack!&#39;);&lt;/script&gt;
alert('XSSあAttack!'); alert(&#39;XSS&#12354;Attack!&#39;);
user@contoso.com user@contoso.com
"Anti-Cross Site Scripting Namespace" &quot;Anti-Cross Site Scripting Namespace&quot;

Para personalizar la lista segura, llame al MarkAsSafe método .

Se aplica a

HtmlEncode(String, TextWriter)

Codifica la cadena especificada para su uso como texto en el marcado HTML y genera la cadena mediante el escritor de texto especificado.

protected public:
 override void HtmlEncode(System::String ^ value, System::IO::TextWriter ^ output);
protected internal override void HtmlEncode(string value, System.IO.TextWriter output);
override this.HtmlEncode : string * System.IO.TextWriter -> unit
Protected Friend Overrides Sub HtmlEncode (value As String, output As TextWriter)

Parámetros

value
String

Cadena que se va a codificar.

output
TextWriter

Escritor de texto que se va a usar para generar la cadena.

Comentarios

Este método codifica todos los caracteres excepto los que se encuentran en la lista segura. Los caracteres se codifican mediante &#DECIMAL; notación.

Note

Coloque comillas dobles (" ") o comillas simples (' ') alrededor de la cadena resultante antes de agregarla a una página.

En la tabla siguiente se enumeran los caracteres seguros predeterminados. Todos los caracteres proceden de los controles Unicode C0 y el intervalo de caracteres latino básico a menos que se indique en la columna Descripción.

Caracteres Description
A-Z Caracteres alfabéticos latinos mayúsculas
a-z Caracteres alfabéticos latinos en minúsculas
0-9 Números
(Espacio) Espacio
! Signo de exclamación
# Signo numérico, hash
$ Signo de dólar
% Signo de porcentaje
( ) Paréntesis
* Asterisk
+ Signo más
, Coma
- Guion, menos
. Punto, punto, parada completa
/ Barra diagonal
: Dos puntos
; Punto y coma
= Signo igual
? Signo de interrogación
@ Comercial en
[ ] Corchetes
\ Barra invertida
^ Acento circunflejo
_ Guion bajo
` Énfasis grave
{ } Llaves, llaves
| Línea vertical
~ Tilde
0x00A1: 0x00AC Caracteres especiales entre 0x00A1 (decimal 161) y 0x00AC (172 decimales) de los controles C1 Unicode y el intervalo de caracteres complemento latin-1 . Los caracteres de este intervalo se codifican cuando useNamedEntities es true.
0x00AE: 0x00FF Caracteres especiales entre 0x00AE (174 decimales) y 0x00FF (255 decimales) de los controles C1 Unicode y el intervalo de caracteres complemento latin-1 . Los caracteres de este intervalo se codifican cuando useNamedEntities es true.
0x0100: 0x017F Caracteres entre 0x0100 (256 decimales) y 0x017F (383 decimales). (Intervalo de caracteres Unicode Latin-Extended-A ).
0x0180: 0x024F Caracteres entre 0x0180 (384 decimales) y 0x024F (591 decimal). (Intervalo de caracteres Unicode Latin-Extended-B ).
0x0250: 0x02AF Caracteres entre 0x0250 (592 decimales) y 0x02AF (687 decimales). (Intervalo de caracteres de extensiones IPA Unicode).
0x02B0: 0x02FF Caracteres entre 0x02B0 (688 decimales) y 0x02FF (767 decimales). (Intervalo de caracteres modificadores de espaciado Unicode).
0x0300: 0x036F Caracteres entre 0x0300 (768 decimales) y 0x036F (879 decimales). (Intervalo de caracteres de marcas diacríticas unicode combinado).

En la tabla siguiente se enumeran ejemplos de entradas y las salidas codificadas correspondientes.

Entrada Output
alert('XSS Attack!'); alert(&#39;XSS Attack!&#39;);
<script>alert('XSS Attack!');</script> &lt;script&gt;alert(&#39;XSS Attack!&#39;);&lt;/script&gt;
alert('XSSあAttack!'); alert(&#39;XSS&#12354;Attack!&#39;);
user@contoso.com user@contoso.com
"Anti-Cross Site Scripting Namespace" &quot;Anti-Cross Site Scripting Namespace&quot;

Para personalizar la lista segura, llame al MarkAsSafe método .

Se aplica a