Безопасное кодирование и декодирование URL
URL-адреса могут содержать только ограниченный набор символов. Пробелы, буквы с диакритикой, эмодзи и символы вроде &, = или # должны быть закодированы (percent-encoding) — записаны как % с двумя шестнадцатеричными цифрами — прежде чем их можно будет использовать в URL. Этот инструмент преобразует текст в такой формат и обратно. Он работает прямо в браузере, поэтому вставленные вами URL-адреса, включая любые токены или личные данные, никогда не отправляются на сервер.
Возможности
- Два режима кодирования: кодируйте отдельное значение (компонент) или весь URL-адрес целиком с сохранением его структуры.
- Кодирование данных форм: возможность заменять пробелы на
+и декодировать+обратно в пробелы. - Поддержка UTF-8 для всех языков и эмодзи.
- Просмотр строки запроса: при декодировании URL каждый параметр отображается в виде пары «ключ/значение», что упрощает чтение длинных трекинговых ссылок и API-запросов.
- Мгновенный результат с копированием в один клик и кнопка смены режима, которая переносит результат в поле ввода для быстрого обратного преобразования.
Когда нужно URL-кодирование
Создание API-запросов. Если поисковый запрос или значение фильтра содержит пробелы или спецсимволы, их нужно закодировать перед добавлением в строку запроса. Иначе & или = внутри значения будут восприняты как начало нового параметра.
Чтение трекинговых ссылок и редиректов. Маркетинговые ссылки и редиректы при авторизации часто содержат целый URL, закодированный внутри другого. Декодируйте их, чтобы узнать реальный адрес ссылки и передаваемые параметры.
Отладка веб-форм. При отправке форм поля кодируются в виде пар key=value, соединенных через &, а пробелы заменяются на +. Декодирование исходного тела запроса показывает, что именно было отправлено.
Обмен ссылками с нелатинскими символами. Браузеры красиво отображают https://example.com/東京, но в реальном запросе используется %E6%9D%B1%E4%BA%AC. Кодирование показывает ссылку в том виде, в котором ее получают серверы.
Зарезервированные и незарезервированные символы
RFC 3986 определяет незарезервированные символы, которые никогда не нужно кодировать: буквы, цифры, -, ., _ и ~. Зарезервированные символы — : / ? # [ ] @ ! $ & ' ( ) * + , ; = — имеют специальное значение в URL и должны быть закодированы, если встречаются внутри значения. Все остальное, включая пробелы и все символы, не входящие в ASCII, кодируется всегда.
URL-кодирование отличается от Base64. Если вам нужно передать бинарные данные или получить компактное буквенно-цифровое представление, используйте кодировщик Base64 — в режиме Base64URL его результат можно безопасно вставлять прямо в URL.