Udostępnij za pośrednictwem


AntiXssEncoder.HtmlEncode Metoda

Definicja

Koduje określony ciąg do użycia jako tekst w znacznikach HTML.

Przeciążenia

HtmlEncode(String, Boolean)

Koduje określony ciąg do użycia jako tekst w znacznikach HTML i opcjonalnie określa, czy używać nazwanych jednostek HTML 4.0.

HtmlEncode(String, TextWriter)

Koduje określony ciąg do użycia jako tekst w znacznikach HTML i wyprowadza ciąg przy użyciu określonego zapisu tekstu.

HtmlEncode(String, Boolean)

Koduje określony ciąg do użycia jako tekst w znacznikach HTML i opcjonalnie określa, czy używać nazwanych jednostek 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

Parametry

input
String

Ciąg do kodowania.

useNamedEntities
Boolean

trueużywanie jednostek nazwanych HTML 4.0 w przypadku niektórych kodowań znaków; falsew celu kodowania przy użyciu & tylko #DECIMAL; notacji.

Zwraca

String

Zakodowany ciąg.

Uwagi

Ta metoda koduje wszystkie znaki z wyjątkiem tych, które znajdują się na liście bezpiecznych znaków. Znaki są kodowane przy użyciu &#DECIMAL; notacji.

Uwaga

Przed dodaniem ciągu do strony umieść znaki podwójnego cudzysłowu (" ") lub pojedynczego cudzysłowu ("") wokół ciągu wynikowego.

W poniższej tabeli wymieniono domyślne bezpieczne znaki. Wszystkie znaki są z zakresu kontrolek Unicode C0 i podstawowych znaków łacińskich, chyba że zostały zanotowanie w kolumnie Opis.

Znaki Opis
A–Z Wielkie litery alfabetu łacińskiego
a–z Małe litery alfabetu łacińskiego
0-9 Liczby
(Spacja) Miejsce
! Wykrzyknik
# Znak numeru, skrót
$ Znak dolara
% Znak procentu
( ) Nawiasy
* Gwiazdka
+ Znak plus
, Przecinek
- Łącznik, minus
. Kropka, kropka, pełne zatrzymanie
/ Slash
: Dwukropek
; Średnik
= Znak równości
? Znak zapytania
@ Komercyjna w:
[ ] Nawiasy kwadratowe
\ Ukośnik odwrotny
^ Daszek
_ Podkreślenia
` Akcent cytowy
{ } Nawiasy klamrowe, nawiasy klamrowe
| Linia pionowa
~ Tylda
0x00A1 — 0x00AC Znaki specjalne między 0x00A1 (161 miejsc dziesiętnych) i 0x00AC (172 dziesiętne) z zakresu znaków Unicode C1 Controls i Latin-1 Supplement. Znaki w tym zakresie są kodowane, gdy useNamedEntities jest true .
0x00AE — 0x00FF Znaki specjalne między 0x00AE (174 dziesiętne) i 0x00FF (255 dziesiętnych) z zakresu znaków unicode C1 i uzupełnienie Latin-1. Znaki w tym zakresie są kodowane, gdy useNamedEntities jest true .
0x0100 — 0x017F Znaki między 0x0100 (256 miejsc dziesiętnych) i 0x017F (383 dziesiętne). (Zakres znaków Unicode łacińsko-rozszerzony-A).
0x0180 — 0x024F Znaki między 0x0180 (384 miejsca dziesiętne) i 0x024F (591 dziesiętne). (Zakres znaków Unicode latin-extended-B).
0x0250 — 0x02AF Znaki między 0x0250 (592 miejsca dziesiętne) i 0x02AF (687 miejsc dziesiętnych). (Zakres znaków rozszerzeń IPA Unicode).
0x02B0 — 0x02FF Znaki między 0x02B0 (688 miejsc dziesiętnych) i 0x02FF (767 miejsc dziesiętnych). (Zakres znaków modyfikatora odstępów Unicode).
0x0300 — 0x036F Znaki między 0x0300 (768 miejsc dziesiętnych) i 0x036F (879 miejsc dziesiętnych). (Unicode łączy znaki diakrytyczne z zakresu znaków).

W poniższej tabeli wymieniono przykłady danych wejściowych i odpowiadające im zakodowane dane wyjściowe.

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&#32;Site&#32;Scripting&#32;Namespace&quot;

Aby dostosować listę bezpiecznych, wywołaj MarkAsSafe metodę .

Dotyczy

HtmlEncode(String, TextWriter)

Koduje określony ciąg do użycia jako tekst w znacznikach HTML i wyprowadza ciąg przy użyciu określonego zapisu tekstu.

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)

Parametry

value
String

Ciąg do kodowania.

output
TextWriter

Autor tekstu, który będzie używać do wyprowadzania ciągu.

Uwagi

Ta metoda koduje wszystkie znaki z wyjątkiem tych, które znajdują się na liście bezpiecznych znaków. Znaki są kodowane przy użyciu &#DECIMAL; notacji.

Uwaga

Przed dodaniem ciągu do strony umieść znaki podwójnego cudzysłowu (" ") lub pojedynczego cudzysłowu (' ') wokół ciągu wynikowego.

W poniższej tabeli wymieniono domyślne bezpieczne znaki. Wszystkie znaki są z zakresu kontrolek Unicode C0 i podstawowych znaków łacińskich, chyba że zostały zanotowanie w kolumnie Opis.

Znaki Opis
A–Z Wielkie litery alfabetu łacińskiego
a–z Małe litery alfabetu łacińskiego
0-9 Liczby
(Spacja) Miejsce
! Wykrzyknik
# Znak numeru, skrót
$ Znak dolara
% Znak procentu
( ) Nawiasy
* Gwiazdka
+ Znak plus
, Przecinek
- Łącznik, minus
. Kropka, kropka, pełne zatrzymanie
/ Slash
: Dwukropek
; Średnik
= Znak równości
? Znak zapytania
@ Komercyjna w:
[ ] Nawiasy kwadratowe
\ Ukośnik odwrotny
^ Daszek
_ Podkreślenia
` Akcent cytowy
{ } Nawiasy klamrowe, nawiasy klamrowe
| Linia pionowa
~ Tylda
0x00A1 — 0x00AC Znaki specjalne między 0x00A1 (161 miejsc dziesiętnych) i 0x00AC (172 dziesiętne) z kontrolek Unicode C1 i zakresu znaków uzupełnienie Latin-1. Znaki w tym zakresie są kodowane, gdy useNamedEntities to true .
0x00AE — 0x00FF Znaki specjalne między 0x00AE (174 miejsca dziesiętne) i 0x00FF (255 dziesiętnych) z kontrolek Unicode C1 i zakresu znaków uzupełnienie Latin-1. Znaki w tym zakresie są kodowane, gdy useNamedEntities to true .
0x0100 — 0x017F Znaki między 0x0100 (256 miejsc dziesiętnych) i 0x017F (383 miejsca dziesiętne). (Zakres znaków Unicode latin-extended-A).
0x0180 — 0x024F Znaki między 0x0180 (384 miejsca dziesiętne) i 0x024F (591 dziesiętnych). (Zakres znaków Unicode Latin-Extended-B).
0x0250 — 0x02AF Znaki między 0x0250 (592 miejsca dziesiętne) i 0x02AF (687 miejsc dziesiętnych). (Zakres znaków rozszerzeń IPA Unicode).
0x02B0 — 0x02FF Znaki między 0x02B0 (688 miejsc dziesiętnych) i 0x02FF (767 miejsc dziesiętnych). (Zakres znaków modyfikatora odstępów Unicode).
0x0300 — 0x036F Znaki między 0x0300 (768 miejsc dziesiętnych) i 0x036F (879 miejsc dziesiętnych). (Zakres znaków łączący znaki diakrytyczne Unicode).

W poniższej tabeli wymieniono przykłady danych wejściowych i odpowiadające im zakodowane dane wyjściowe.

alert('XSS Attack!'); alert(&#39;XSS&#32;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&#32;Site&#32;Scripting&#32;Namespace&quot;

Aby dostosować listę bezpiecznych, wywołaj MarkAsSafe metodę .

Dotyczy