Difference between revisions of "IPConnection.HTTPPunycodeDecode"
(Created page with "{{infobox function |name=HTTPPunycodeDecode |object=Объект IP |caption=Кодирование частей URL |type=1 |status=2 |db=0 |exception=Невозможн...") |
m (1 revision imported) |
(No difference)
|
Latest revision as of 07:51, 7 February 2021
HTTPPunycodeDecode (Кодирование частей URL) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Функция выполняет декодирование произвольной строки, закодированной в формат Punycode, используется для доменной части URL, если она содержит международные символы. Декодирование осуществляется в режиме URL или в режиме обычной строки. Корректно декодируются символы юникода с кодами >65535 (занимающие 4 байта, см. Строки). Функция может быть вызвана непосредственно из интерфейса. По своему действию функция совпадает с DecodeString с форматом декодирования Punycode (за исключением режима по умолчанию). К примеру xn--80adxhks.xn--p1ai
декодируется в москва.рф
. Если в кодированной строке содержалась ошибка формата, функция возвратит пустую строку. Punycode может использоваться также для получения ссылки на так называемые эмодзи домены, т.е., доменные имена, в которых присутствуют картинки, типа смайликов и пр. К примеру, 💩.to
или 😎.com
после конвертации в Punycode будут превращены в xn--ls8h.to
и xn--s28h.com
соответственно.
Синтаксис
IPConnection.HTTPPunycodeDecode(<Строка для декодирования (STRING)>,<Режим декодирования (INT)>=1):<Результат декодирования (STRING)>
Аргументы
<Строка для декодирования (STRING)>
- Строка для декодирования.<Режим декодирования (INT)>
- (необязательный аргумент) Аргумент задает режим декодирования. Возможны следующие значения:- 0 -- декодирование произвольных строк (игнорируется доменная структура строки
<домен1>.<домен2>...
, не учитывается префиксxn--
). К примеру,.-7sbf5ajmsd6a
декодируется вмосква.рф
. - 1 (по умолчанию) -- декодирование доменных имен (каждое доменное имя из строки
<домен1>.<домен2>...
кодируется отдельно, добавляется префиксxn--
). К примеру,xn--80adxhks.xn--p1ai
декодируется вмосква.рф
.
- 0 -- декодирование произвольных строк (игнорируется доменная структура строки
Возвращаемое значение
Возвращается строку-результат декодирования
Примеры
//Пример декодирования URL //Выводится строка: "москва.рф" Message(IPConnection.HTTPPunycodeDecode("xn--80adxhks.xn--p1ai")); //Пример декодирования свободной строки //Выводится строка: "москва.рф" Message(IPConnection.HTTPPunycodeDecode(".-7sbf5ajmsd6a",0));