Информатика

URL encode/decode

Кодирование и декодирование строки локально в браузере.

Строка

Результат

Длина
13

Данные не покидают страницу.

URL encode/decode преобразует символы в percent-encoding и обратно. Это нужно для query-параметров, кириллицы, пробелов и специальных символов в ссылках.

Как работает URL-кодирование

В URL часть символов имеет служебное значение. Percent-encoding записывает байт как знак процента и две шестнадцатеричные цифры, чтобы строку можно было безопасно передать в адресе.

Как кодировать URL онлайн

  1. Выберите режим. Отметьте кодирование или декодирование URL-строки.
  2. Вставьте фрагмент. Добавьте полный URL, query-параметр или отдельное значение.
  3. Получите результат. Инструмент заменит небезопасные символы или восстановит исходный текст.
  4. Проверьте контекст. Убедитесь, что кодируете именно значение параметра, а не случайно весь URL целиком.

Форма percent-encoding

байт 0xD0 → %D0
пробел в query часто записывают как %20 или +

RFC 3986 описывает синтаксис URI и reserved-символы. В web-формах пробел в query может кодироваться плюсом, но в path обычно используют %20.

Пример кириллицы в параметре

Значение привет в UTF-8 превращается в последовательность percent-encoded байтов, чтобы сервер получил исходную строку без потери символов.

Источники

Подробнее о проверке формул и источников — в методологии Calcup.

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

FAQ

Часто задаваемые вопросы

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

Когда значение содержит пробелы, кириллицу, амперсанд, знак вопроса, процент или другие символы, которые могут нарушить структуру ссылки.

Кодировать весь URL или параметр?

Чаще кодируют отдельные значения параметров. Если закодировать весь URL целиком, служебные символы : / ? & тоже могут потерять смысл.

Почему пробел стал плюсом?

В query-строках web-форм пробел часто передают как +. В других частях URL обычно используют %20.

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

Осторожно. Двойное декодирование может изменить смысл строки, если внутри были настоящие percent-последовательности.

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

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