Онлайн-декодирование URL

Бесплатный URL-декодер – декодируйте и кодируйте URL мгновенно в браузере. Быстро, приватно, без установки.

0 символов
Декодировать
0 символов
Кодировать
Поддержка UTF-8Многоуровневое декодированиеОбнаружение ошибокТолько на стороне клиента

Как декодировать URL за 3 простых шага

  1. Вставьте ваш URL

    Скопируйте закодированный URL и вставьте его в поле ввода выше.

  2. Мгновенное декодирование

    Инструмент автоматически декодирует ваш URL в реальном времени по мере ввода.

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

    Нажмите кнопку копирования, чтобы сохранить декодированный URL в буфер обмена.

Возможности URL декодера

  • Многоуровневое декодирование

    Автоматически обнаруживает и декодирует несколько уровней кодирования URL до стабильного результата.

  • Поддержка UTF-8

    Полная поддержка символов в кодировке UTF-8, включая международный текст и эмодзи.

  • Обнаружение ошибок

    Выявляет неправильное кодирование URL и предоставляет четкие сообщения об ошибках для отладки.

  • Конфиденциальность прежде всего

    Вся обработка происходит в вашем браузере. Ваши данные никогда не покидают ваше устройство.

Понимание кодирования и декодирования URL

Процентное кодирование URL — это фундаментальный механизм, используемый для кодирования специальных символов в URL. Когда вы видите символы вроде %20 или %26, они представляют собой знак процента (%), за которым следуют шестнадцатеричные значения, соответствующие определенным символам.

Декодирование UTF-8 необходимо для обработки международных символов в URL. Наш инструмент полностью поддерживает контент в кодировке UTF-8, позволяя декодировать URL, содержащие символы любого языка, включая китайский, японский, арабский и эмодзи.

Понимание компонентов URL крайне важно для веб-разработки. URL состоит из нескольких частей: протокол, домен, путь, параметры запроса и фрагмент. Каждый компонент может требовать кодирования при содержании зарезервированных символов, таких как Компоненты URL ?, &, =, #.

Отладка REST API. При работе с API вы часто сталкиваетесь с закодированными параметрами запроса или сегментами пути. Возможность быстро декодировать эти URL помогает выявлять проблемы в запросах API и понимать фактически передаваемые данные.

Процентное кодирование встречается далеко не только в адресной строке. Строка запроса OAuth redirect_uri, глубокая ссылка в push-уведомлении, трекинг-ссылка в маркетинговом письме и сегмент пути в логе веб-сервера — все они содержат закодированные данные. Декодировать вручную медленно и легко ошибиться, поэтому эта страница делает всё за вас сразу после вставки.

Одна деталь часто ставит в тупик: в отправке HTML-форм (application/x-www-form-urlencoded) знак + означает пробел. Но в процентно-кодированном URL + — это просто плюс. Поэтому один и тот же ввод может декодироваться по-разному в зависимости от источника — и поэтому существует %2B для буквального плюса в данных форм. Этот декодер следует стандарту URL: он декодирует процентные последовательности и оставляет + как есть.

Частые процентные коды

Эти восемь последовательностей покрывают большую часть того, что встречается в реальных URL. Перед публикацией я сверил каждое соответствие в таблице со стандартом WHATWG URL.

КодСимволГде встречается
%20spaceКлассика. Введённый пробел в URL всегда превращается в %20.
%23#Буквальный знак решётки. Сырой # начал бы фрагмент, поэтому в данных он кодируется.
%26&Буквальный амперсанд. Сырой & разделил бы параметры запроса.
%3D=Буквальный знак равенства. Сырой = отделяет ключ от значения.
%3F?Буквальный вопросительный знак. Сырой ? начал бы строку запроса.
%2B+Буквальный плюс. В строках запроса многие серверы читают голый + как пробел, поэтому настоящий плюс нужно кодировать.
%25%Сам знак процента. Всегда кодируется, иначе декодер неправильно прочитает последовательность.
%2F/Слэш внутри значения. В путях серверы часто оставляют его сырым, но в данных запроса — нет.

Разбор примера: декодируем реальный URL

Возьмём URL, который можно скопировать из адресной строки браузера:

https://api.example.com/search?q=hello%20world&lang=zh%26en
  1. Разделить по вопросительному знаку

    Всё до ? — это путь. Всё после — строка запроса, где пары разделены &.

  2. Декодировать каждое значение

    Декодер читает два значения hello%20world и zh%26en и возвращает каждой процентной последовательности её символ.

  3. Прочитать результат

    q становится hello world, а lang — zh&en. & внутри zh%26en был данными, а не разделителем — декодирование возвращает его, не ломая структуру.

То же самое декодирование на JavaScript:

const url = "https://api.example.com/search?q=hello%20world&lang=zh%26en";
const params = new URLSearchParams(new URL(url).search);
console.log(params.get("q"));    // "hello world"
console.log(params.get("lang")); // "zh&en"

Запуск выводит:

hello world
zh&en

Один слой за раз. Если URL закодирован дважды, в исходнике будет %2520: первый декод даёт %20, второй — пробел. Декодер на этой странице обнаруживает лишние слои и снимает их за вас.

URL Decode Online против ручного декодирования

Декодировать URL можно вручную, в консоли браузера или в серверном скрипте. Вот сравнение распространённых подходов:

МетодUTF-8МногослойноКогда использовать
URL Decode OnlineДаДа, автоматическиПовседневное декодирование: вставили один раз — получили полный текст, а некорректные последовательности подсвечены.
Чтение кодов вручнуюМедленноЗапутанноРеально только для одиночных символов; %E4%B8%AD = 中 требует запоминания таблиц байтов UTF-8.
decodeURIComponent()ДаНетБыстрые проверки в консоли DevTools; на некорректном вводе бросает URIError.
Python unquote()ДаНетСерверные скрипты и пайплайны логов; unquote_plus также превращает + в пробел.
curl --data-urlencodeДаНетЭто кодирование, а не декодирование: удобно для тестовых запросов в терминале, пробелы пишет как + в стиле форм.

Когда нужен декодер URL

Процентно-кодированные строки встречаются в гораздо большем числе задач, чем починка сломанной ссылки:

  • Отладка REST API — скопируйте URL запроса из DevTools и прочитайте реальные значения параметров до изменения кода.
  • Чтение трекинг-ссылок — utm_campaign=summer%20sale становится читаемым ещё до клика.
  • Разбор логов — логи веб-сервера хранят закодированные пути; декодирование восстанавливает реальные запросы.
  • Проверка подписанных URL — подписанные URL S3 и CloudFront кодируют ключи и сроки действия, которые нужно проверить.
  • Проверка OAuth-редиректов — параметр redirect_uri в URL авторизации закодирован; декодируйте его, чтобы убедиться в адресе назначения.

Часто задаваемые вопросы о декодировании URL

Что такое декодирование URL?

Декодирование URL (также известное как процентное декодирование) — это процесс преобразования закодированных символов в URL обратно в их исходную форму. При передаче данных через URL специальные символы заменяются знаком процента (%) и двумя шестнадцатеричными цифрами. Например, %20 представляет пробел, а %26 — амперсанд (&).

Как бесплатно декодировать URL онлайн?

Просто вставьте закодированный URL в поле ввода вверху этой страницы. Наш инструмент автоматически декодирует URL в реальном времени по мере ввода, мгновенно показывая результат. Затем вы можете скопировать декодированный результат одним кликом. Регистрация, оплата или установка программного обеспечения не требуется. Можно вставлять и частично закодированные URL — декодер продолжает, пока больше нечего декодировать, и показывает, сколько слоёв он обработал.

Что такое процентное кодирование?

Процентное кодирование (также называемое URL-кодированием) — это механизм кодирования информации в URL с использованием только ограниченного набора символов ASCII. Специальные символы заменяются знаком процента (%) и их шестнадцатеричным ASCII-значением. Это обеспечивает безопасную передачу URL во всех системах без повреждения данных. Например, эмодзи 😀 превращается в %F0%9F%98%80 — четыре байта UTF-8, записанные в шестнадцатеричном виде.

Зачем нужно кодировать URL?

URL могут содержать только ограниченный набор ASCII-символов. Специальные символы, такие как пробелы, амперсанды, вопросительные знаки и не-ASCII символы (например, международный текст UTF-8), должны быть закодированы для безопасной передачи в URL. Это обеспечивает корректную работу URL во всех браузерах, серверах и системах по всему миру. Если оставить эти символы сырыми, смысл URL меняется: & разделяет параметры, # начинает фрагмент, а многие серверы вообще отвергают сырой пробел.

Больше инструментов декодирования URL