Лаборатория кодера

Инструмент

URL-кодирование и разбор адреса

Кодирует и декодирует строки для адресов (percent-encoding), раскладывает адрес на части и показывает параметры запроса таблицей.

Работает в браузере, данные никуда не отправляются

Результат

Параметры запроса

Какие символы кодируются

В адресе без кодирования могут стоять только латинские буквы, цифры и - . _ ~. Остальные символы переводятся в байты UTF-8, и каждый байт записывается как %XX. Например, буква «ж» — это байты D0 B6, в адресе она станет %D0%B6.

ФункцияНе трогаетКогда использовать
encodeURIComponentA–Z a–z 0–9 - _ . ! ~ * ' ( )для значения одного параметра или части пути
encodeURIто же плюс ; , / ? : @ & = + $ #для готового адреса, где нужно сохранить структуру
форма (application/x-www-form-urlencoded)как encodeURIComponent, но пробел — +тело HTML-формы, URLSearchParams

Грабли

  • Плюс в параметре запроса формы означает пробел. Если в значении нужен сам +, он должен стать %2B.
  • Двойное кодирование: %20 превращается в %2520. Так бывает, когда уже закодированное значение кодируют ещё раз.
  • Часть после # браузер не отправляет на сервер.