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.