AntiXssEncoder.UrlPathEncode(String) Metodo

Definizione

Codifica stringhe di percorso da utilizzare in un 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

Parametri

value
String

Stringa da codificare.

Restituisce

URL contenente il percorso codificato.

Commenti

Questo metodo codifica tutti i caratteri ad eccezione di quelli inclusi nell'elenco di indirizzi attendibili. I caratteri vengono codificati usando %SINGLE_BYTE_HEX la notazione.

Nella tabella seguente sono elencati i caratteri sicuri predefiniti. Tutti i caratteri provengono dall'intervallo di caratteri Unicode C0 Controls e Basic Latin .

Caratteri Descrizione
A-Z Caratteri alfabetici maiuscoli
a-z Caratteri alfabetici minuscoli
0-9 Numeri
# Segno di numero, hash
% Segno di percentuale
( ) Parentesi
- Trattino, meno
. Punto, punto, arresto completo
/ Barra
\ Barra rovesciata
_ Sottolineatura
{ } Parentesi graffe, parentesi graffe
| Linea verticale
~ Tilde

Nella tabella seguente sono elencati esempi di input e output codificati corrispondenti.

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

Questo metodo codifica solo il percorso di un URL. Questo metodo non codifica lo schema (ad esempio, , o ), l'autorità (ad esempio, www.northwind.com o www.contoso.com:8080) o la query o il frammento (ad esempio, ?v=s978dfs9#x=103).file:ftp:http: Se nella stringa non è presente uno schema o un'autorità, si presuppone che la stringa sia un percorso relativo e il percorso sia codificato. Nell'URL seguente viene codificata solo la sottostringa /default.htm :

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

Si applica a