Sdílet prostřednictvím


AntiXssEncoder.UrlPathEncode(String) Metoda

Definice

Kóduje řetězce cest pro použití v adrese URL.

protected public:
 override System::String ^ UrlPathEncode(System::String ^ value);
protected internal override string UrlPathEncode (string value);
override this.UrlPathEncode : string -> string
Protected Friend Overrides Function UrlPathEncode (value As String) As String

Parametry

value
String

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

Návraty

Adresa URL, která obsahuje zakódovanou cestu.

Poznámky

Tato metoda kóduje všechny znaky kromě těch, které jsou v seznamu bezpečných. Znaky jsou kódovány pomocí %SINGLE_BYTE_HEX zápisu.

Následující tabulka uvádí výchozí bezpečné znaky. Všechny znaky jsou z rozsahu znaků Unicode C0 a základní znakové znaky latinky .

Znaky Description
A–Z Znaky abecedy velkými písmeny
a–z Malá písmena
0-9 Čísla
# Znak čísla, hodnota hash
% Znak procenta
( ) Závorky
- Spojovník, minus
. Tečka, tečka, úplná stopa
/ Lomítko
\ Zpětné lomítko
_ Podtržítko
{ } Složené závorky
| Svislá čára
~ Tilda

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

http://www.contoso.com:8080/<en-us>/[page].htm?v={value1}#x=[amount] http://www.contoso.com:8080/%3cen-us%3e/%5bpage%5d.htm?v={value1}#x=[amount]
alert('XSS Attack!'); alert(%27XSS%20Attack%21%27)%3b
<script>alert('XSS Attack!');</script> %3cscript%3ealert(%27XSS%20Attack%21%27)%3b%3c/script%3e
alert('XSSあAttack!'); alert(%27XSS%e3%81%82Attack%21%27)%3b
user@contoso.com user%40contoso.com
"Anti-Cross Site Scripting Namespace" %22Anti-Cross%20Site%20Scripting%20Namespace%22

Tato metoda kóduje pouze cestu adresy URL. Tato metoda nebude kódovat schéma (například , nebo ), autoritu (například www.northwind.com nebo www.contoso.com:8080) ani dotaz nebo fragment (například ?v=s978dfs9#x=103).file:ftp:http: Pokud řetězec neobsahuje žádné schéma nebo autoritu, předpokládá se, že řetězec je relativní cesta a cesta je kódována. V následující adrese URL je kódovaný pouze podřetěžce /default.htm :

http://www.contoso.com:8080/default.htm?v=s978dfs9#x=103

Platí pro