AntiXssEncoder.UrlPathEncode(String) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Encode les chaînes de chemin d'accès à utiliser dans une 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
Paramètres
- value
- String
Chaîne à encoder.
Retours
URL qui contient le chemin d’accès encodé.
Remarques
Cette méthode encode tous les caractères à l’exception de ceux figurant dans la liste sécurisée. Les caractères sont encodés à l’aide %SINGLE_BYTE_HEX
de la notation.
Le tableau suivant répertorie les caractères sécurisés par défaut. Tous les caractères proviennent des contrôles Unicode C0 et de la plage de caractères latins de base .
Caractère(s) | Description |
---|---|
A-Z | Caractères alphabétiques majuscules |
a-z | Caractères alphabétiques minuscules |
0-9 | Nombres |
# | Signe numérique, hachage |
% | Signe de pourcentage |
( ) | Parenthèses |
- | Trait d’union, moins |
. | Point, point, point complet |
/ | Slash |
\ | Barre oblique inverse |
_ | Trait de soulignement |
{ } | Accolades, crochets bouclés |
| | Ligne verticale |
~ | Tilde |
Le tableau suivant répertorie des exemples d’entrées et les sorties encodées correspondantes.
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 |
Cette méthode encode uniquement le chemin d’accès d’une URL. Cette méthode n’encodera pas le schéma (par exemple, http:
, ftp:
ou file:
), l’autorité (par exemple, www.northwind.com
ou www.contoso.com:8080
) ou la requête ou le fragment (par exemple, ?v=s978dfs9#x=103
). S’il n’y a pas de schéma ou d’autorité dans la chaîne, la chaîne est supposée être un chemin relatif et le chemin d’accès est encodé. Dans l’URL suivante, seule la sous-chaîne /default.htm
est encodée :
http://www.contoso.com:8080/default.htm?v=s978dfs9#x=103