Кодировщик и декодировщик URL
Преобразует текст в безопасную для URL кодировку (процентное кодирование) и обратно. Полезно для строк запроса, перенаправлений и OAuth-потоков.
Что такое кодирование URL и когда оно вам нужно?
Кодирование URL (также называемое «процентным кодированием», описано в RFC 3986) — это процесс преобразования символов, имеющих особое значение в URL, или символов, которые попросту небезопасны в URL, в шестнадцатеричную escape-последовательность «%XX». Спецификация URL резервирует определённые символы со структурным значением: «?» начинает строку запроса, «#» начинает фрагмент, «&» разделяет параметры запроса, «/» разделяет сегменты пути и так далее. Если ввод пользователя содержит любой из этих символов, и вы вставляете его в URL как есть, парсер интерпретирует его неправильно. Кодирование URL предотвращает это, заменяя каждый зарезервированный или небезопасный символ его шестнадцатеричным представлением в байтах с префиксом «%». Пробел превращается в %20, «&» — в %26, «=» — в %3D. Символы не из набора ASCII (кириллица, китайские иероглифы, эмодзи) преобразуются в многобайтовые UTF-8 последовательности, причём каждый байт кодируется процентным способом. Браузеры обрабатывают это автоматически, когда вы щёлкаете по ссылке, но всякий раз, когда вы строите URL программно — создавая поисковый запрос, цель перенаправления, OAuth-обратный вызов или подпись вебхука — вы должны сначала закодировать значения, предоставленные пользователем. Этот инструмент использует те же функции encodeURIComponent / decodeURIComponent, которые использовал бы ваш код на JavaScript, поэтому поведение в точности совпадает с продакшеном.
Типичные сценарии использования
Кодируйте поисковые запросы пользователей перед добавлением их к поисковому URL (?q=user+input).
Безопасно передавайте параметр OAuth redirect_uri серверу авторизации.
Создавайте URL вебхуков, содержащие закодированную полезную нагрузку JSON в строке запроса.
Кодируйте URL 'returnTo', чтобы он сохранился при передаче через другие URL.
Декодируйте закодированные значения, которые вы видите в адресной строке браузера после отправки формы.
Проверяйте, как разбирается некорректный URL — закодируйте специальный символ и посмотрите, что произойдёт.
Часто задаваемые вопросы
Когда мне следует кодировать URL?▼
В чём разница между encodeURI и encodeURIComponent?▼
Что такое URL-безопасный Base64 в сравнении с кодированием URL?▼
Почему иногда '+' декодируется как пробел?▼
Как кодируются символы не из набора ASCII?▼
То же ли самое кодирование URL, что и кодирование HTML-сущностей?▼
Похожие инструменты
Декодировщик JWT
Мгновенно декодирует JSON Web Tokens (JWT). Работает в вашем браузере: токены никогда не покидают ваше устройство, поэтому им безопасно пользоваться с продакшен-секретами.
Форматировщик и валидатор JSON
Форматируйте, проверяйте и минифицируйте JSON онлайн. Работает полностью в вашем браузере: ваши данные никогда не покидают ваше устройство.
Форматировщик XML
Форматирует и делает читаемыми документы XML. Полезно для SOAP, карт сайта, RSS-лент и файлов конфигурации.
Кодировщик и декодировщик Base64
Кодирует строки в Base64 или декодирует Base64 в текст. Уважает вашу конфиденциальность: всё выполняется в вашем браузере.
Кодировщик и декодировщик HTML-сущностей
Преобразует специальные символы в HTML-сущности (&, < и т. д.) и обратно. Полезно для безопасной вставки текста в HTML.
Минификатор CSS
Удаляет комментарии, пробелы и ненужные символы из CSS, чтобы уменьшить размер файла.