AntiXssEncoder.UrlPathEncode(String) Método

Definição

Codifica cadeias de caminho para uso numa 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

Parâmetros

value
String

A cadeia a codificar.

Devoluções

A URL que contém o caminho codificado.

Observações

Este método codifica todos os caracteres, exceto aqueles que estão na lista de seguros. Os caracteres são codificados usando %SINGLE_BYTE_HEX notação.

A tabela seguinte lista as personagens seguras por defeito. Todos os caracteres pertencem aos Controlos Unicode C0 e à gama de caracteres Basic Latin.

Personagem(s) Descrição
De A a Z Caracteres alfabéticos maiúsculos
a-z Caracteres alfabéticos minúsculos
0-9 Números
# Sinal numérico, hash
% Símbolo de percentagem
( ) Parênteses
- Hífen, menos
. Ponto final, ponto final
/ Barra
\ Barra invertida
_ Caráter de sublinhado
{ } Aparelhos, brackets enrolados
| Linha vertical
~ Til

A tabela seguinte lista exemplos de entradas e as correspondentes saídas codificadas.

Entrada Produção
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@contoso.com
"Anti-Cross Site Scripting Namespace" %22Anti-Cross%20Site%20Scripting%20Namespace%22

Este método codifica apenas o caminho de uma URL. Este método não codificará o esquema (por exemplo, http:, , ou ftp:), a autoridade (por exemplo, file: ou www.northwind.com), nem a consulta ou fragmento (por exemplo, www.contoso.com:8080?v=s978dfs9#x=103). Se não houver esquema ou autoridade na cadeia, assume-se que a cadeia é um caminho relativo, e o caminho é codificado. No URL seguinte, apenas a substring /default.htm é codificada:

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

Aplica-se a