Закодируйте компонент URL, чтобы специальные знаки остались частью значения. Подготовьте параметры без путаницы с разделителями адреса.
Как пользоваться
Введите только нужный компонент. Вставьте результат в соответствующую часть URL, не кодируя весь адрес целиком.
Пример
red & blue становится red%20%26%20blue. Амперсанд не разделит значение на разные параметры.
Вопросы и ответы
Нужно ли кодировать весь URL?
Нет. Кодировщик экранирует и структурные знаки, включая : и /. Обрабатывайте отдельные значения перед сборкой адреса.
Связанные инструменты
Практическая задача
Кодируйте значение до соединения с именем и разделителями запроса. Пробелы, амперсанды и нелатинские буквы должны остаться внутри значения, а не менять адрес.
Дополнительный вопрос
Можно кодировать уже закодированное?
Тогда проценты экранируются снова. Начинайте с исходного значения, если формат явно не требует ещё одного слоя.
Детали для проверки результата
| Деталь | Пояснение |
|---|---|
| Части URL | URL содержит схему, домен, путь, запрос и фрагмент. Разделители этих частей отличаются от знаков внутри значения. Кодируйте нужный компонент, а не меняйте полный адрес вслепую. |
| Процентное кодирование | Знак процента и две шестнадцатеричные цифры обозначают байт, а не видимый символ. Несколько таких записей могут относиться к одному символу Unicode, занимающему несколько байтов UTF8. |
| Значения запроса | Разделители запроса связывают имена параметров и значения. Амперсанд внутри значения нельзя путать с границей параметров. Перед публикацией соберите адрес с правильным кодированием частей. |
| Фрагменты URL | Фрагмент указывает место внутри ресурса и обычно не отправляется серверу. Это не параметр запроса. Его изменение не обязательно создаёт другой документ для выбора канонического адреса. |
| Байты UTF8 | UTF8 записывает символы байтами. Базовая латиница занимает один байт на букву, многие другие знаки занимают больше. Число байтов не равно числу видимых символов. |
| Кодирование и шифрование | Кодирование меняет представление данных для чтения другой системой и не требует секретного ключа. Шифрование защищает сведения ключом, а хеширование создаёт отпечаток для другой задачи. |
| Ссылки на символы HTML | Запись вроде & обозначает знак внутри HTML. При вложении она может быть экранирована повторно. Снятие одного слоя отличается от полного декодирования всех уровней. |
| Открытые данные URL | Адреса копируются, записываются в журналы и аналитику. Не помещайте пароли, личные сведения клиентов и секретные токены в обычные параметры или общедоступные ссылки: кодирование их не защищает. |
| Внешне одинаковый текст | Две строки могут выглядеть одинаково, но иметь разные последовательности Unicode. Буква с акцентом бывает цельным знаком или сочетанием. Внешнее сходство не доказывает равенство байтов. |