5 мин чтения
2026-01-28
URL кодирование кажется простым, но часто приводит к ошибкам. Вот ключевые советы.
Не кодируйте весь URL целиком. Кодируйте только значения параметров запроса, оставляя структуру URL нетронутой.
В пути URL пробел кодируется как %20. В теле формы (application/x-www-form-urlencoded) — как +. Не путайте контексты.
Двойное кодирование — частая ошибка. Символ & становится %26, а при повторном кодировании — %2526. Проверяйте входные данные.
Кириллица и другие Unicode-символы сначала конвертируются в UTF-8 байты, затем каждый байт кодируется отдельно.
В JavaScript для кодирования параметров используйте encodeURIComponent(), а не encodeURI(). Они кодируют разные наборы символов.
Закодированные URL могут стать очень длинными. Большинство браузеров поддерживают URL до 2048 символов. Для длинных данных используйте POST-запросы.
Смотрите также: Base64 кодирование, HTML кодирование, Бинарный текст