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

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

Кодируйте или декодируйте символы, которые нельзя напрямую использовать в URL (широкие символы, пробелы, знаки) с помощью URL-кодирования. Переключайтесь между encodeURIComponent (для частей URL) и encodeURI (для полной ссылки). Можно также преобразовывать пробелы в +. Вся обработка выполняется локально в вашем браузере (данные никуда не отправляются).

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

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

Различия режимов
  • encodeURIComponent идеально подходит для частей URL (значений запросов, сегментов пути, значений фрагментов и т. д.). Он кодирует почти всё, кроме -_.!~*'(), поэтому такие символы, как :, /, ?, #, & и =, тоже преобразуются.
  • encodeURI следует использовать для целых URL; он оставляет символы, имеющие значение в синтаксисе URL (например, :/?#&=,+;$), без изменений, поэтому протоколы и разделители остаются корректными.
  • Включайте «Преобразовывать пробелы в +», когда требуется кодирование, совместимое с формами. При декодировании инструмент преобразует + обратно в пробелы.
// Пример: кодирование "a/b?x=1 2"
encodeURIComponent("a/b?x=1 2")
// → "a%2Fb%3Fx%3D1%202"

encodeURI("https://ex.com/a/b?x=1 2")
// → "https://ex.com/a/b?x=1%202"   (:/?= сохраняются, только пробел превращается в %20)

Примечания

  • Используйте encodeURIComponent для частей URL, а encodeURI — для полных адресов.
  • + часто трактуется как пробел при отправке форм (этот инструмент при декодировании нормализует его обратно в пробел).
  • Длина результата может заметно измениться, особенно для многобайтных символов UTF-8.