URL декодер и кодировщик

Превратите ссылку вида %D0%9C%D0%BE%D1%81… обратно в читаемый текст или закодируйте русские слова для адреса. Можно кодировать один параметр или весь URL целиком, сохранив : / ? # & =.

Символов
0
Слов
0
Строк
0

Ваш текст не покидает ваше устройство.

Как пользоваться

  1. Выберите «Декодировать», чтобы прочитать ссылку, или «Закодировать», чтобы подготовить текст для URL.
  2. Вставьте ссылку или текст. Для целого адреса включите «Весь адрес».
  3. Скопируйте результат.

Примеры

  • До
    https://ru.wikipedia.org/wiki/%D0%9C%D0%BE%D1%81%D0%BA%D0%B2%D0%B0
    После
    https://ru.wikipedia.org/wiki/Москва
  • До
    https://example.ru/поиск?q=кофе с молоком (весь адрес)
    После
    https://example.ru/%D0%BF%D0%BE%D0%B8%D1%81%D0%BA?q=%D0%BA%D0%BE%D1%84%D0%B5%20%D1%81%20%D0%BC%D0%BE%D0%BB%D0%BE%D0%BA%D0%BE%D0%BC
  • До
    кофе+молоко
    После
    %D0%BA%D0%BE%D1%84%D0%B5%2B%D0%BC%D0%BE%D0%BB%D0%BE%D0%BA%D0%BE

Когда нужно кодировать и декодировать

  • Прочитать ссылку. Мессенджеры и почтовые программы часто показывают русские адреса в виде процентов. Декодирование вернёт их к читаемому виду.
  • Собрать ссылку с параметрами. Поисковый запрос, UTM-метка или название товара на русском в параметре нужно закодировать, иначе ссылка сломается на пробеле или «&».
  • Отладка. Разобраться, что на самом деле передаётся в запросе к API или в редиректе.

Какие символы кодируются

Латинские буквы, цифры и знаки - _ . ! ~ * ' ( ) никогда не кодируются. В обычном режиме кодируется всё остальное, включая пробел (%20), «&» (%26), «+» (%2B) и «/» (%2F). В режиме «Весь адрес» служебные символы : / ? # [ ] @ $ & + , ; = остаются на месте, кодируются только кириллица, пробелы и другие небезопасные символы. При декодировании в этом режиме закодированные служебные символы, например %2F, тоже остаются закодированными, чтобы не изменилась структура адреса.

Частые ошибки

  • Кодировать адрес дважды. Если закодировать уже закодированную ссылку, % превратится в %25, и получится %25D0%259C. Сначала декодируйте, затем кодируйте один раз.
  • Кодировать весь адрес обычным режимом. «https://» превратится в «https%3A%2F%2F», и ссылка перестанет работать. Для целого URL включайте «Весь адрес».
  • Не кодировать «&» в значении. Параметр q=чай & кофе без кодирования разделится на два параметра.
  • Ждать + вместо пробела. Здесь пробел всегда %20 — это работает везде.

Как не запутаться в режимах

Для значения параметра (?q=привет мир) используйте обычный режим: он кодирует всё, включая &, = и /. Для целого адреса включите «Весь URL»: структура ссылки (: / ? # & =) сохранится, а пробелы и кириллица закодируются. Если закодировать целый адрес в режиме параметра, ссылка перестанет работать.

Что полезно знать

  • Кириллица кодируется в UTF-8: буква «п» превращается в %D0%BF, поэтому адрес с русскими словами становится заметно длиннее.
  • Последовательность %2520 означает, что %20 закодировали повторно. Декодируйте адрес ещё раз.
  • Одиночный знак % в тексте вызывает ошибку: его нужно писать как %25.
  • Знак + при декодировании остаётся плюсом и не превращается в пробел.

Частые вопросы

Как раскодировать ссылку с процентами?

Нажмите «Декодировать» и вставьте ссылку. Последовательности вида %D0%9C превратятся обратно в русские буквы, пробелы и знаки. Удобно, когда ссылка на статью Википедии или товар скопировалась в виде длинной строки с процентами.

Почему русские буквы в ссылке превращаются в %D0%…?

В адресе можно использовать только латиницу, цифры и несколько знаков. Остальные символы записываются байтами UTF-8 в виде %XX. Одна русская буква занимает два байта, поэтому «М» превращается в %D0%9C, а слово «Москва» — в строку из 36 символов.

Чем «Весь адрес» отличается от обычного режима?

Обычный режим кодирует всё, включая : / ? & = — так нужно кодировать значение параметра, чтобы «&» внутри него не разорвал ссылку. Режим «Весь адрес» оставляет служебные символы на месте и кодирует только остальное — так можно привести к правильному виду целую ссылку.

Почему + не превратился в пробел?

В процентной кодировке пробел — это %20, а знак + остаётся плюсом. Замена пробела на + — правило HTML-форм, и не все серверы его понимают. Поэтому в обычном режиме инструмент кодирует + как %2B, а при декодировании оставляет + плюсом.

Что значит ошибка «после % должны идти две шестнадцатеричные цифры»?

Ссылка обрезана или повреждена: например, в конце осталось «%2» вместо «%20». Инструмент показывает позицию ошибки — проверьте, что ссылка скопирована полностью.