ДокументыИзображенияМедиаИнструменты PDF

URL Кодировать/Декодировать Онлайн

Кодируйте и декодируйте URL-адреса в браузере — процентное кодирование по RFC 3986.

Обработано в вашем браузере — текст не отправляется на серверы

URL кодирование и декодирование мгновенно

Стандарт RFC 3986

Корректное процентное кодирование согласно актуальной спецификации URL.

Полная конфиденциальность

Обработка в браузере. URL и параметры не отправляются на сервер.

Unicode поддержка

Корректная обработка кириллицы, иероглифов, эмодзи и любых UTF-8 символов.

Мгновенно

Результат появляется в реальном времени при вводе.

Три шага — никаких сложностей

1

Вставьте URL или текст

Введите URL-адрес или строку, которую нужно закодировать или декодировать.

2

Выберите направление

Нажмите «Кодировать» для процентного кодирования или «Декодировать» для обратного.

3

Скопируйте результат

Результат появляется мгновенно. Скопируйте его одним кликом.

Остались вопросы?

URL-кодирование (процентное кодирование) преобразует символы, недопустимые в URL, в формат %XX, где XX — шестнадцатеричный код символа в UTF-8. Например, пробел кодируется как %20, знак & как %26, а русская буква «а» как %D0%B0. Стандарт определён в RFC 3986.

Разрезервированные символы (unreserved) не кодируются: A–Z, a–z, 0–9, -, _, ., ~. Зарезервированные символы (;, :, @, &, =, +, $, ,, /, ?, #, [, ]) имеют специальное значение в URL. Все остальные, включая пробелы, кириллицу, emoji и спецсимволы, должны быть закодированы.

encodeURI кодирует строку как полный URL, оставляя нетронутыми зарезервированные символы (:, /, ?, #, @). encodeURIComponent кодирует строку как компонент URL (значение параметра), кодируя в том числе зарезервированные символы. Для кодирования значений query string следует использовать encodeURIComponent.

Кириллица в URL кодируется в UTF-8 байты, каждый из которых записывается как %XX. Например, «Москва» → %D0%9C%D0%BE%D1%81%D0%BA%D0%B2%D0%B0. Декодирование выполняется в обратном порядке: %XX-последовательности преобразуются в байты, затем интерпретируются как UTF-8 строка.

IDN (Internationalized Domain Names) позволяют использовать не-ASCII символы в доменных именах. В браузерах они отображаются в читаемом виде (например, пример.рф), но в DNS передаются в форме Punycode: xn--e1afmkfd.xn--p1ai. URL-кодирование применяется к путям и параметрам, но не к доменным именам — для них используется Punycode.

URL-кодирование: RFC 3986, IDN и интернационализация адресов

Стандарт URL (Uniform Resource Locator) эволюционировал через несколько RFC: RFC 1738 (1994) определил первый формальный синтаксис URL, RFC 2396 (1998) обобщил концепцию до URI, а RFC 3986 (2005) является действующей спецификацией. Процентное кодирование позволяет включать в URL произвольные октеты, представляя каждый как %HH, где HH — шестнадцатеричное значение байта.

Интернационализация URL решается двумя механизмами: IRI (Internationalized Resource Identifier, RFC 3987) формально расширяет URI, разрешая символы Unicode в путях и параметрах. На практике браузеры отображают IRI в читаемом виде, но передают в HTTP-запросах в процентно-кодированной форме UTF-8. Для доменных имён используется Punycode (RFC 3492).

Правильное URL-кодирование критично для безопасности веб-приложений. Недостаточное кодирование может привести к инъекциям параметров или path traversal атакам. Избыточное двойное кодирование (%2520 вместо %20) создаёт трудноуловимые ошибки. Понимание разницы между encodeURI и encodeURIComponent в JavaScript — фундаментальный навык веб-разработчика.