Инструмент
URL-кодирование и разбор адреса
Кодирует и декодирует строки для адресов (percent-encoding), раскладывает адрес на части и показывает параметры запроса таблицей.
Работает в браузере, данные никуда не отправляются
Результат
Параметры запроса
Какие символы кодируются
В адресе без кодирования могут стоять только латинские буквы, цифры и - . _ ~. Остальные символы переводятся в байты UTF-8, и каждый байт записывается как %XX. Например, буква «ж» — это байты D0 B6, в адресе она станет %D0%B6.
| Функция | Не трогает | Когда использовать |
|---|---|---|
encodeURIComponent | A–Z a–z 0–9 - _ . ! ~ * ' ( ) | для значения одного параметра или части пути |
encodeURI | то же плюс ; , / ? : @ & = + $ # | для готового адреса, где нужно сохранить структуру |
форма (application/x-www-form-urlencoded) | как encodeURIComponent, но пробел — + | тело HTML-формы, URLSearchParams |
Грабли
- Плюс в параметре запроса формы означает пробел. Если в значении нужен сам
+, он должен стать%2B. - Двойное кодирование:
%20превращается в%2520. Так бывает, когда уже закодированное значение кодируют ещё раз. - Часть после
#браузер не отправляет на сервер.