Sdílet prostřednictvím


AntiXssEncoder.HtmlAttributeEncode(String, TextWriter) Metoda

Definice

Zakóduje a vytvoří výstup zadaného řetězce pro použití v atributu HTML.

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

Parametry

value
String

Řetězec určený ke kódování

output
TextWriter

Zapisovač textu, který má být použit pro výstup řetězce.

Poznámky

Tato metoda zakóduje všechny znaky kromě těch, které jsou uvedeny v seznamu bezpečných hodnot. Znaky jsou zakódovány pomocí &#DECIMAL; notace Notation.

Poznámka

Přidejte dvojité uvozovky ("") nebo jednoduché uvozovky (') kolem výsledného řetězce před jeho přidáním na stránku.

V následující tabulce jsou uvedeny výchozí bezpečné znaky. Všechny jsou z ovládacího prvku Unicode C0 a základního rozsahu znaků latinky, Pokud se neuvádí ve sloupci Popis.

Znaky Popis
A – Z Velká písmena latinské abecedy
a – z Malá písmena abecedy v latince
0-9 Čísla
! Vykřičník
# Znak čísla, hodnota hash
$ Znak dolaru
% Symbol procenta
( ) Závorky
* Hvězdička
+ Znaménko plus
, Čárka
- Spojovník, mínus
. Tečka, tečka, úplné zastavení
/ Dvě
: Dvojtečka
; Střední
= Rovnítko
? Otazník
@ Komerční po přihlášení
[ ] Hranaté závorky
\ Zpětné lomítko
^ Něj
_ Podtržítkem
` Čárka akcent
{ } Složené závorky, složené závorky
| Svislá čára
~ Tilda
0x00A1 - 0x00AC Speciální znaky mezi 0x00A1 (161 desítky) a 0x00AC (172 desítky) z ovládacích prvků Unicode C1 a doplňku s příznakem v latince – 1.
0x00AE - 0x00FF Speciální znaky mezi 0x00AE (174 desítky) a 0x00FF (255 desítky) z ovládacích prvků Unicode C1 a doplňku s příznakem v latince – 1.
0x0100 - 0x017F Znaky mezi 0x0100 (256 desítky) a 0x017F (383 desítkově). (Unicode s latinkou rozšířené – rozsah znaků.)
0x0180 - 0x024F Znaky mezi 0x0180 (384 desítky) a 0x024F (591 desítkově). (Rozsah znaků v latince s diakritikou (Unicode)
0x0250 - 0x02AF Znaky mezi 0x0250 (592 desítky) a 0x02AF (687 desítkově). (Rozsah znaků rozšíření IPA Unicode.)
0x02B0 - 0x02FF Znaky mezi 0x02B0 (688 desítky) a 0x02FF (767 desítkově). (Znaková zkratka pro mezery Unicode: rozsah znaků.)
0x0300 - 0x036F Znaky mezi 0X0300 (768 desítky) a 0x036F (879 desítkově). (Kódování Unicode: rozsah znaků diakritická znaménka.)

V následující tabulce jsou uvedeny příklady vstupů a odpovídající kódované výstupy.

Příklady vstupu Kódované výstupy
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;

Chcete-li přizpůsobit seznam bezpečných, zavolejte MarkAsSafe metodu.

Platí pro