AntiXssEncoder.HtmlAttributeEncode(String, TextWriter) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Koduje i wyprowadza określony ciąg do użycia w atrybutze 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
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 z nich znajdują się w zakresie 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 |
| ! | 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 |
| @ | Komercyjny znak przy podpisywaniu |
| [ ] | Nawiasy kwadratowe |
| \ | Ukośnik odwrotny |
| ^ | Daszek |
| _ | Podkreślenia |
| ` | Akcent z akcentem akcentu |
| { } | 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. |
| 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łniających Latin-1. |
| 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.
| Przykłady danych wejściowych | Zakodowane dane wyjściowe |
|---|---|
alert('XSS Attack!'); |
alert('XSS Attack!'); |
<script>alert('XSS Attack!');</script> |
<script>alert('XSS Attack!');</script> |
alert('XSSあAttack!'); |
alert('XSSあAttack!'); |
user@contoso.com |
user@contoso.com |
"Anti-Cross Site Scripting Namespace" |
"Anti-Cross Site Scripting Namespace" |
Aby dostosować listę bezpiecznych, wywołaj MarkAsSafe metodę .