AntiXssEncoder.UrlPathEncode(String) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Кодирует строки пути для использования в 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
Параметры
- value
- String
Кодируемая строка.
Возвращаемое значение
URL-адрес, содержащий закодированный путь.
Комментарии
Этот метод кодирует все символы, кроме тех, которые находятся в списке надежных. Символы кодируются с помощью %SINGLE_BYTE_HEX
нотации.
В следующей таблице перечислены безопасные символы по умолчанию. Все символы относятся к элементам управления C0 в Юникоде и базовому латинскому диапазону символов.
Символы | Описание |
---|---|
A–Z | Буквы верхнего регистра |
a–z | Символы в алфавитном регистре в нижнем регистре |
0-9 | Числа |
# | Числовой знак, хэш |
% | Знак процента |
( ) | Круглые скобки |
- | Дефис, минус |
. | Точка, точка, полная остановка |
/ | Слэш |
\ | Обратная косая черта |
_ | Символ подчеркивания |
{ } | Фигурные скобки, фигурные скобки |
| | Вертикальная линия |
~ | Тильда |
В следующей таблице перечислены примеры входных данных и соответствующие закодированные выходные данные.
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 |
Этот метод кодирует только путь к URL-адресу. Этот метод не кодирует схему (например, , или ), центр (например, www.northwind.com
или www.contoso.com:8080
) или запрос или фрагмент (например, ?v=s978dfs9#x=103
).file:
ftp:
http:
Если в строке нет схемы или центра, предполагается, что строка является относительным путем, и путь кодируется. В следующем URL-адресе кодируется только подстрока /default.htm
:
http://www.contoso.com:8080/default.htm?v=s978dfs9#x=103