Перейти к содержанию
TextArray
100% локально

URL-кодирование и декодирование

Процентное кодирование текста для URL-адресов и декодирование экранированных адресов обратно в обычный текст.

Входные данные
Выходные данные

URL-кодирование и декодирование

URL-адреса принимают только ограниченный набор символов, поэтому все остальное — пробелы, буквы с диакритическими знаками, амперсанды, эмодзи — должно быть закодировано в процентах с помощью escape-символов %XX. Вставьте текст, чтобы закодировать его, или вставьте экранированный адрес, чтобы прочитать его в простом виде. Используйте его при построении строк запроса вручную, отладке цепочки перенаправлений или при анализе ссылки отслеживания, которую кто-то вам прислал. Ссылки, которые проходят через несколько уровней перенаправления или отслеживания, часто поступают в двойном или тройном кодировании — включите «Повторное декодирование», и инструмент будет продолжать декодирование до тех пор, пока текст не перестанет меняться, поэтому адрес с несколькими кодировками разворачивается за один шаг.

Селектор области определяет, насколько агрессивным является кодирование. «Компонент» экранирует все, что не является простым символом, включая & = ? и #, что вам нужно для одного значения запроса или сегмента пути — значение остается значением и не может вырваться в структуру URL. «Полный URL» оставляет структурные символы в покое, поэтому весь адрес сохраняет свою схему, разделители и фрагмент, в то время как пробелы и символы, отличные от ASCII, по-прежнему экранируются.

Параметр «Считать + как пробел» охватывает отправку HTML-форм, где пробелы перемещаются как +, а не как %20. Включите его, и кодирование выдаст +, а декодирование преобразует + обратно в пробелы. Оставьте его, и + будет восприниматься как буквальный знак плюса, что и нужно для большинства современных API.

Текст, отличный от ASCII, кодируется как UTF-8, что соответствует ожиданиям браузеров и серверов, поэтому словацкие диакритические знаки и смайлики точно передаются туда и обратно. Если строка содержит прерванный escape — случайный % или усеченную последовательность — вы получите четкое объяснение вместо неправильного ответа. Все работает в вашем браузере и ничего не загружается, поэтому здесь можно безопасно проверять URL-адреса, содержащие токены сеанса, подписанные параметры или внутренние имена хостов. Подсчет под выходными данными подсчитывает, сколько последовательностей было экранировано или не экранировано.

FAQ

В чем разница между компонентом и полным URL-адресом?
Компонент экранирует & = ? и # тоже, чтобы значение не могло нарушить окружающий URL-адрес — используйте его для одного параметра запроса. Полный URL-адрес сохраняет эти структурные символы, поэтому весь адрес остается пригодным для использования.
Когда мне следует включать «Рассматривать + как пробел»?
Для данных формы HTML, где пробелы передаются как +. В большинстве других случаев оставьте его, чтобы + оставался буквальным знаком плюса.
Как обрабатываются диакритические знаки и эмодзи?
Они закодированы как escape-байты UTF-8, так же, как это делают браузеры — «šťastie» становится %C5%A1%C5%A5astie и точно возвращается туда и обратно.
Почему декодирование сообщает об ошибке?
Во входных данных присутствует неверная последовательность % — один %, неполная пара или байты, не соответствующие UTF-8. Проверьте конец строки на наличие усеченного escape-кода.
Мой текст где-нибудь загружен?
Нет. Инструмент полностью работает в вашем браузере, и ваш текст никогда не покидает ваше устройство.