URL-кодировщик / декодер
Кодируйте текст для безопасного использования в URL или декодируйте процентно-кодированные строки обратно в обычный текст. Поддерживает стандартный, формовый (+) и полный режимы RFC 3986.
Формат кодирования
Справочник кодирования специальных символов
| Символ | Стандартный | Формовый (+) |
|---|---|---|
| (space) | %20 | + |
| & | %26 | %26 |
| = | %3D | %3D |
| + | %2B | %2B |
| / | %2F | %2F |
| ? | %3F | %3F |
| # | %23 | %23 |
| @ | %40 | %40 |
| % | %25 | %25 |
| ! | ! | ! |
* Full RFC 3986 mode only encodes unreserved characters (A–Z, a–z, 0–9, -, _, ., ~).
Часто задаваемые вопросы
URL-кодирование, также называемое процентным кодированием, преобразует символы, которые запрещены или имеют специальное значение в URL, в безопасный формат. Каждый небезопасный символ заменяется знаком процента (%) с двумя шестнадцатеричными цифрами, представляющими байтовое значение UTF-8. Например, пробел становится %20, амперсанд — %26, а косая черта — %2F. Стандарт определён в RFC 3986.
И %20, и + представляют пробел, но принадлежат к разным стандартам кодирования. %20 (стандартный / RFC 3986) — универсальное процентное кодирование пробела, безопасное в любой части URL. + (формовое кодирование / application/x-www-form-urlencoded) — стандарт отправки HTML-форм: браузеры кодируют значения полей формы, заменяя пробел на +. Используйте %20 в параметрах API; используйте формовое кодирование только для отправки HTML-форм.
RFC 3986 определяет незарезервированные символы, всегда безопасные без кодирования: буквы A–Z и a–z, цифры 0–9, дефис (-), подчёркивание (_), точка (.) и тильда (~). Стандартный encodeURIComponent также оставляет ! ~ * ' ( ) без кодирования. Всё остальное — пробелы, &, =, +, /, ?, #, @, %, не-ASCII Unicode — должно быть закодировано. При сомнениях используйте режим Полный RFC 3986.
URL-кодирование необходимо всякий раз, когда вы включаете пользовательские данные или специальные символы в URL. Без кодирования запрос типа ?name=Алиса & Боб нарушает структуру URL. В REST API URL-кодированные параметры обеспечивают доставку запроса на сервер в целости. Корректное URL-кодирование также критически важно для OAuth-токенов, JWT-параметров запроса и любых URL перенаправления, передаваемых как значение запроса.