URL-кодирование и декодирование

Превращает привет мир в %D0%BF%D1%80… и обратно — для параметров запроса, ссылок и API.

Режим

Работает в браузере. Введённые данные не отправляются на наш сервер.

Об инструменте

В URL можно использовать только ограниченный набор символов. Пробелы, кириллица, &, = и ? внутри значений нужно кодировать: каждый байт UTF-8 записывается как % и две шестнадцатеричные цифры.

Режим по умолчанию кодирует значение параметра целиком (как encodeURIComponent). Если нужно закодировать готовую ссылку и не сломать её структуру, включите кодирование URL целиком.

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

  1. Выберите «Кодировать» или «Декодировать».
  2. Вставьте текст или ссылку — результат появится сразу.
  3. Для данных из HTML-форм включите «Считать + пробелом» при декодировании.

Примеры

Ввод
привет мир
Результат
%D0%BF%D1%80%D0%B8%D0%B2%D0%B5%D1%82%20%D0%BC%D0%B8%D1%80
Ввод
q=a&b
Результат
q%3Da%26b

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

Чем кодирование параметра отличается от кодирования всего URL?

При кодировании параметра экранируются и служебные символы / ? & = #, иначе они сломают адрес. При кодировании всего URL они сохраняются.

Пробел кодируется как %20 или +?

В адресах — %20. Знак + вместо пробела используется только в данных HTML-форм (application/x-www-form-urlencoded).

Почему при декодировании ошибка?

Обычно после % стоят не две шестнадцатеричные цифры или последовательность байт не образует корректный UTF-8 — например, если ссылка обрезана.