TL
Tool Lab
💰Пожертвовать
💰Пожертвовать

URI Component Encoder

Percent-кодирование и декодирование URI-компонентов и полных URL онлайн

Function:
Plain Input

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

Кодировщик / декодировщик компонентов URI оборачивает встроенные функции браузера encodeURIComponent, decodeURIComponent, encodeURI и decodeURI в удобный интерфейс. Процентное кодирование заменяет символы, недопустимые в URL, на % с двумя шестнадцатеричными цифрами, представляющими байт UTF-8.

encodeURIComponent / decodeURIComponent рассматривает ввод как отдельный компонент (значение параметра запроса, сегмент пути), кодируя все специальные символы. encodeURI / decodeURI рассматривает ввод как полный URL, сохраняя структурные символы вроде ://?=#, чтобы форма URL не нарушалась.

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

  1. Выберите Encode для процентного кодирования или Decode для обратного процесса.
  2. Выберите функцию: encodeURIComponent для отдельного значения или encodeURI для полного URL.
  3. Вставьте текст или нажмите «Пример», чтобы загрузить образец.
  4. Нажмите «Конвертировать», затем «Копировать результат».

Случаи использования

Front-end разработчики кодируют значения строки запроса перед добавлением их в URL. Back-end инженеры декодируют payload форм с процентным кодированием для проверки. QA-инженеры проверяют кодирование URL перед подачей багов. Интеграторы API кодируют токены аутентификации или специальные символы в URL запросов.

Частые вопросы

  • В чём разница между encodeURI и encodeURIComponent?encodeURI предназначен для полных URL и не кодирует символы, допустимые на уровне URL (:/?#&). encodeURIComponent предназначен для отдельных компонентов и кодирует также эти структурные символы.
  • Почему пробел превращается в %20, а не в +?Процентное кодирование (%20) — это стандарт, определённый RFC 3986. Нотация + специфична для кодирования HTML-форм (application/x-www-form-urlencoded) и не используется этими функциями.
  • Отправляются ли мои данные куда-либо?Нет. Всё выполняется в браузере с помощью встроенных функций JavaScript. Ничего не передаётся на сервер.