Sdílet prostřednictvím


AntiXssEncoder.XmlEncode(String) Metoda

Definice

Zakóduje zadaný řetězec pro použití v atributech XML.

public:
 static System::String ^ XmlEncode(System::String ^ input);
public static string XmlEncode (string input);
static member XmlEncode : string -> string
Public Shared Function XmlEncode (input As String) As String

Parametry

input
String

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

Návraty

Kódovaný řetězec.

Poznámky

Tato metoda kóduje všechny znaky s výjimkou těch, které jsou v seznamu bezpečných. Znaky jsou kódovány pomocí &#DECIMAL; zápisu.

Poznámka

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

Následující tabulka uvádí výchozí bezpečné znaky. Všechny znaky pocházejí z rozsahu ovládacích prvků Unicode C0 a základní latinky s výjimkou případů, kdy jsou uvedeny ve sloupci Popis.

Znaky Description
A–Z Velká písmena latinky
a-z Malá písmena v latince
0-9 Čísla
(Mezera) Místo
! Vykřičník
# Znak čísla, hodnota hash
$ Znaménko dolaru
% Znak procenta
( ) Závorky
* Hvězdička
+ Znaménko plus
, Čárka
- Pomlčka, minus
. Období
/ Lomítko
: Dvojtečka
; Středník
= Rovnítko
? Otazník
@ Commercial ve společnosti
[ ] Hranaté závorky
\ Zpětné lomítko
^ Stříška
_ Podtržítko
` Zvýraznění hrobu
{ } Složené závorky, složené závorky
| Svislá čára
~ Tilda
0x00A1 – 0x00AC Speciální znaky mezi 0x00A1 (161 desetinných míst) a 0x00AC (172 desetinných míst) z rozsahu znaků Unicode C1 Controls and Latin-1 Supplement . Znaky v tomto rozsahu jsou kódovány, pokud useNamedEntities je true.
0x00AE – 0x00FF Speciální znaky mezi 0x00AE (174 desetinných míst) a 0x00FF (255 desetinných míst) z rozsahu znaků Unicode C1 Controls and Latin-1 Supplement . Znaky v tomto rozsahu jsou kódovány, pokud useNamedEntities je true.
0x0100 – 0x017F Znaky mezi 0x0100 (256 desetinných míst) a 0x017F (383 desetinných míst). (Rozsah znaků Unicode Latin-Extended-A .)
0x0180 – 0x024F Znaky mezi 0x0180 (384 desetinných míst) a 0x024F (591 desetinných míst). (Rozsah znaků Unicode Latin-Extended-B .)
0x0250 – 0x02AF Znaky mezi 0x0250 (592 desetinných míst) a 0x02AF (687 desetinných míst). (Rozsah znaků Rozšíření IPA unicode .)
0x02B0 – 0x02FF Znaky mezi 0x02B0 (688 desetinných míst) a 0x02FF (767 desetinných míst). (Rozsah znaků Modifikátoru mezer v kódování Unicode.)
0x0300 – 0x036F Znaky mezi 0x0300 (768 desetinných míst) a 0x036F (879 desetinných míst). (Oblast znaků Unicode kombinující diakritická znaménka .)

Následující tabulka uvádí příklady vstupů a odpovídajících zakódovaných výstupů.

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

Pokud chcete seznam bezpečných položek přizpůsobit, zavolejte metodu MarkAsSafe .

Platí pro