Кодирование и декодирование URL
Кодируйте текст в percent-формат для URL и параметров запроса или декодируйте уже закодированный URL. Переключайтесь между encodeURIComponent для отдельных
Кодируйте текст в percent-формат, чтобы он безопасно передавался внутри URL, или декодируйте ссылку, скопированную из журнала или письма. Такие значения, как пробелы, амперсанды, вопросительные знаки и нелатинские символы, должны быть экранированы, прежде чем попадут в строку запроса, и инструмент наглядно показывает, как выглядит закодированная форма.
Важны два режима: кодирование отдельного значения (поискового запроса, адреса email, токена) экранирует каждый зарезервированный символ, а кодирование полной ссылки сохраняет структурные символы — слэши, вопросительный знак, амперсанд — нетронутыми. Неверный выбор — классическая причина сломанного перенаправления, поэтому режим можно переключать.
Как кодировать и декодировать URL
Вставьте текст или URL
Выберите режим значения или полной ссылки
Скопируйте закодированный или декодированный результат
Частые вопросы
В чём разница между двумя режимами?
Режим значения экранирует зарезервированные символы вроде & = ? / #, и именно это нужно внутри параметра запроса. Режим полной ссылки сохраняет эти символы, чтобы полный URL оставался рабочим.
Почему пробел становится %20 или +?
%20 — это стандартное процентное кодирование. Знак плюс — устаревшее соглашение из отправки HTML-форм, и он равноценен пробелу только внутри строки запроса, но не в пути.
Инструмент умеет и декодировать, а не только кодировать?
Да, декодирование работает в обе стороны и показывает исходные символы, включая текст с диакритикой и CJK.
Почему декодирование моей строки не удаётся?
Одиночный знак %, за которым не следуют две шестнадцатеричные цифры, некорректен и не может быть декодирован. Проверьте, не обрезано ли значение и не задумывался ли знак процента как обычный символ.
Поддерживаются ли нелатинские символы?
Да, текст сначала кодируется как UTF-8, а затем в percent-формат — именно этого ожидают браузеры и серверы.
Мои данные куда-то загружаются?
Нет, кодирование и декодирование — это чисто текстовая операция в вашем браузере.
Кратко
| Ввод | текст |
|---|---|
| Несколько файлов | Нет |
| Где работает | В вашем браузере — файлы никуда не загружаются |
| Работает офлайн | Да — после загрузки страницы |
| Цена | Бесплатно, без регистрации, без водяных знаков |
Как выбрать формат данных
JSON — выбор по умолчанию для всего, что возвращает API или читает программа: он естественно работает с вложенными структурами, числами, логическими значениями и null, и его разбирает любой язык. CSV компактнее и открывается прямо в таблице, но в нём нельзя выразить вложенность и нет общего стандарта для разделителя, кавычек и кодировки — именно здесь конвертации и ломаются. XML многословен, но несёт атрибуты, смешанное содержимое и схемы, поэтому до сих пор доминирует в форматах документов и устаревших интеграциях. YAML самый читаемый для конфигурации, но чувствителен к пробелам и удивляет приведением типов («no» превращается в false, версия вроде 1.10 — в 1.1). Выбирайте формат, который предпочитает потребляющий инструмент, а не тот, что выглядит красивее.
Где конвертации незаметно ломаются
Большинство ошибок конвертации — не про синтаксис, а про смысл. Столбец CSV с почтовыми индексами теряет ведущие нули в тот момент, когда таблица решает, что это число; длинный идентификатор выходит за пределы точности чисел с плавающей запятой; даты меняют смысл в зависимости от того, что идёт первым — день или месяц. Ключи JSON не упорядочены, а массивы упорядочены, и инструмент, сортирующий ключи, ничего не меняет, тогда как сортирующий массивы меняет данные. Unicode — ещё одна ловушка: текст может прийти в UTF-8, в UTF-16 или с BOM, и декодер, который угадает неверно, превращает буквы с диакритикой в «кракозябры». Прежде чем доверять любой конвертации, выборочно проверьте первую и последнюю строку, любое поле с ведущими нулями и любое поле, содержащее кавычки, запятые или переводы строк.