CanDoYa
RU

Кодировать и декодировать URL

Работает прямо в браузере - без загрузки файлов и регистрации.

Стандартное процентное кодирование для отдельного значения запроса, сегмента пути или фрагмента (encodeURIComponent).
Ввод
Результат
Введите текст для кодирования или процентно-кодированный текст для декодирования
Поделиться инструментом

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

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

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

  1. 1Выберите направление. Выберите Кодировать для преобразования текста в URL-безопасный формат, или Декодировать для обратного преобразования процентно-кодированного текста.
  2. 2Выберите режим. Component кодирует отдельное значение (наиболее распространенный случай), Full URL сохраняет структуру URL, а Form использует + для пробела.
  3. 3Вставьте входные данные. Введите или вставьте текст в поле ввода - результат обновляется в реальном времени в соседней панели.
  4. 4Скопируйте результат. Скопируйте результат и вставьте его туда, где нужно. Некорректные процентные последовательности показывают понятное сообщение вместо искаженного текста.

Кому пригодится

Кодирование выполняется по мере ввода и остается на вашем устройстве - текст никогда не загружается на сервер, что делает его безопасным для токенов, URI перенаправления и приватных строк запроса. Выберите Component для отдельного значения запроса или сегмента пути, Full URL если входные данные уже являются полным URL с не-ASCII-текстом, и Form для отправки HTML-форм, где пробел - это +.

Вопросы и ответы

Этот URL-кодировщик бесплатный?

Да - он полностью бесплатный, без регистрации и без ограничений использования. Кодирование и декодирование работают в браузере.

Мои данные загружаются на сервер?

Нет. Текст обрабатывается локально в браузере и никогда не отправляется на сервер, поэтому он безопасен для токенов, значений OAuth-перенаправления и приватных строк запроса.

В чем разница между режимами Component, Full URL и Form?

Component (encodeURIComponent) кодирует отдельное значение запроса или сегмент пути - также процентно-кодирует <code>&amp; = ? /</code>. Full URL (encodeURI) оставляет эти структурные символы как есть, что нужно для полного URL. Form - как Component, но пробел становится <code>+</code> вместо <code>%20</code> - правило HTML <code>application/x-www-form-urlencoded</code>.

Работает с эмодзи, ударениями и не-латинскими символами?

Да. Символы за пределами ASCII кодируются как байты UTF-8 - например, буква с ударением становится <code>%C3%A9</code>, <code>🌍</code> - <code>%F0%9F%8C%8D</code> - и декодируются обратно в исходный текст.

Почему пробел иногда %20, а иногда +?

<code>%20</code> - это универсальное процентное кодирование для пробела. Форма со знаком плюс (<code>+</code>) используется только внутри данных <code>application/x-www-form-urlencoded</code> - то есть в теле POST HTML-формы или строке запроса при отправке формы. Используйте режим Form для таких случаев; Component или Full URL - для всех остальных.

Почему появляется 'Некорректное URL-кодирование'?

Входные данные содержат <code>%</code>, за которым не следуют два шестнадцатеричных символа (например <code>%G1</code> или завершающий <code>%</code>), или байты процентной кодировки не образуют валидный UTF-8. Исправьте некорректную последовательность или снова вставьте исходную закодированную строку.

Можно ли кодировать уже закодированную строку?

Можно, но каждый <code>%</code> во входных данных становится <code>%25</code>, и результат будет дважды закодирован. Сначала декодируйте, если входная строка уже содержит процентное кодирование - или используйте направление Декодировать.