ConvertText.app LogoConvertText.app

Кодувальник / Декодувальник URL

Кодуйте URL-адреси, рядки запиту та спеціальні символи у відсоткове кодування або декодуйте закодований текст назад до читабельних URL — миттєво, прямо у браузері. Цей інструмент працює як відсотковий кодувальник, відсотковий декодувальник, кодувальник рядка запиту, декодувальник рядка запиту та конвертер кодування URL з підтримкою UTF-8 — усе на одній сторінці.

Вставте URL-адресу або будь-який текст у поле введення, оберіть кодування або декодування, а також вкажіть, чи ви працюєте з окремим компонентом URL або повною URL-адресою, і скопіюйте результат. Усе виконується локально у браузері за допомогою нативних функцій JavaScript для роботи з URL, тому ваші дані ніколи не залишають пристрій.

Параметри перетворення
Оберіть, чи хочете ви кодувати або декодувати, і чи працюєте ви з одним компонентом URL (наприклад, значенням запиту) або повним URL.

Режим Компонента кодує зарезервовані символи, такі як / ? # & =, у відсоткове представлення, щоб значення було безпечним у рядку запиту або сегменті шляху.

Текст для кодування
Введіть текст або URL, який хочете закодувати. Пробіли стануть %20, спеціальні символи будуть закодовані у відсоткове представлення.
0 символів
Закодований результат
Результат у відсотковому кодуванні, безпечний для використання в URL.
0 символів

Це приватний кодувальник і декодувальник URL, що працює у браузері. Він використовує нативні функції encodeURIComponent, encodeURI, decodeURIComponent та decodeURI для безпечної обробки тексту UTF-8 без передачі даних на сервер.

Що робить цей кодувальник і декодувальник URL?

Кодувальник URL перетворює символи, які не можна безпосередньо використовувати в URL-адресі, на відсотково закодовані послідовності. Декодувальник URL виконує зворотну операцію, перетворюючи закодований текст назад на вихідні символи. Ця сторінка виконує обидві операції в обох напрямках — для окремого компонента URL або для повної URL-адреси.

Інструмент використовує чотири стандартні функції JavaScript:

  • encodeURIComponent — для кодування окремого компонента URL, наприклад значення параметра запиту.
  • encodeURI — для кодування повної URL-адреси зі збереженням зарезервованих символів (: / ? # & =), що мають структурне значення.
  • decodeURIComponent — для декодування окремого компонента URL назад до вихідних символів.
  • decodeURI — для декодування повної URL-адреси без зміни зарезервованих символів.

Усі перетворення підтримують UTF-8: символи з діакритикою, емодзі та символи нелатинських алфавітів обробляються коректно. Жодні дані не завантажуються на сервер, не зберігаються і не передаються через API.

Приклади кодування URL

Кілька практичних прикладів того, як виглядає кодування URL:

  • Пробіл стає %20: «привіт світ» кодується як %D0%BF%D1%80%D0%B8%D0%B2%D1%96%D1%82%20%D1%81%D0%B2%D1%96%D1%82.
  • Коса риска у значенні параметра стає %2F: a/b перетворюється на a%2Fb.
  • Знак питання у значенні стає %3F: «що?» перетворюється на %D1%89%D0%BE%3F.
  • Амперсанд у значенні стає %26, що запобігає порушенню структури рядка запиту.
  • Символ решітки у значенні стає %23: c# перетворюється на c%23.
  • Символи поза межами ASCII використовують багатобайтові послідовності UTF-8. Наприклад, café стає caf%C3%A9 (é — два байти UTF-8).
  • Емодзі також використовують багатобайтовий UTF-8: 😀 стає %F0%9F%98%80.

Перемкніть інструмент у режим «Декодувати» і вставте будь-який із цих закодованих рядків, щоб отримати вихідний текст у точності.

Компонент URL або повна URL: вибір режиму

Вибір правильного режиму важливий, адже два кодувальники по-різному обробляють зарезервовані символи.

Використовуйте режим «Компонент» (encodeURIComponent / decodeURIComponent), коли кодуєте окреме значення для вставки в URL-адресу — наприклад значення параметра запиту, сегмент шляху або значення фрагмента. У цьому режимі зарезервовані символи (: / ? # [ ] @ ! $ & ' ( ) * + , ; =) кодуються відсотковим кодуванням, щоб вони не могли випадково порушити структуру URL-адреси навколо.

Використовуйте режим «Повна URL» (encodeURI / decodeURI), коли маєте готову URL-адресу виду https://example.com/path?query=value#fragment і потрібно лише екранувати небезпечні символи (пробіли, символи не-ASCII), не торкаючись зарезервованих структурних символів.

Поширена помилка — застосування encodeURI до значення, яке має стати параметром запиту. Зарезервовані символи залишаться незміненими і можуть пошкодити URL-адресу навколо. У сумнівних випадках кодуйте кожне значення через encodeURIComponent, а потім складайте URL.

Що таке відсоткове кодування?

Відсоткове кодування (інша назва — URL-кодування) — це спосіб представлення в URL-адресі зарезервованих символів (які мають структурне значення) або символів, що взагалі не допускаються в URL. Кожен небезпечний байт записується як знак відсотка, за яким слідують дві шістнадцяткові цифри: наприклад, %20 для пробілу, %2F для косої риски або %3F для знака питання.

Кодування працює на рівні байтів, а не символів безпосередньо. Сучасні URL-адреси використовують UTF-8 для попереднього перетворення символів у байти, тому один символ з діакритикою може давати два закодованих байти, а емодзі — чотири. Інструмент завжди використовує UTF-8, що забезпечує сумісність закодованих рядків з рештою вебу.

Відсоткове кодування визначено в RFC 3986. Нативні функції JavaScript, що використовуються тут, реалізують цю специфікацію, тому значення, закодоване через encodeURIComponent у будь-якому сучасному браузері, коректно декодується через decodeURIComponent скрізь.

Коли використовувати цей інструмент

Цей кодувальник-декодувальник URL стане в нагоді щоразу, коли потрібно безпечно перемістити текст в URL-адресу або з неї. Типові сценарії:

  • Кодування тексту для рядка запиту перед вставкою в API-запит, рядок журналу або адресний рядок браузера.
  • Декодування параметрів URL із журналу запитів або експорту аналітики для читання вихідних значень.
  • Перевірка довгої закодованої URL-адреси шляхом декодування — подивитися, що реально передається.
  • Екранування спеціальних символів в URL-адресі перед публікацією у чаті, документації або JSON-payload.
  • Вивчення того, як відсоткове кодування та байтові послідовності UTF-8 відповідають символам.

Оскільки інструмент працює повністю у браузері, він підходить і для конфіденційних URL-адрес (внутрішні посилання, токени, підписані URL), які небажано вставляти в сторонні сервіси.

Кодування URL і очищення URL — у чому різниця

Кодування URL та очищення URL — це дві різні операції, які часто плутають.

Кодування URL (цей інструмент) перетворює символи у відсотково закодовану форму і назад. Структура URL-адреси при цьому зберігається: нічого не додається і не видаляється.

Очищення URL (окремий тип інструмента) видаляє трекінгові параметри — utm_source, utm_medium, fbclid, gclid та подібні ключі запиту, — щоб підсумкове посилання не містило метаданих відстеження. Очищення URL змінює параметри в адресі — кодування цього не робить.

Якщо потрібно видалити трекінгові параметри, скористайтеся спеціалізованим очищувачем URL. Якщо потрібно закодувати або декодувати текст у відсоткове кодування або з нього — це потрібний інструмент.

Поширені запитання

Що таке кодувальник і декодувальник URL?

Кодувальник URL перетворює зарезервовані або небезпечні символи в URL-адресі на відсотково закодовані послідовності (наприклад, пробіл стає %20). Декодувальник URL виконує зворотну операцію, відновлюючи вихідні символи. Сторінка підтримує обидва напрямки та працює як з окремим компонентом URL, так і з повною адресою — все у браузері.

Що таке кодування URL?

Кодування URL — це процес заміни символів, що мають спеціальне значення в URL-адресах або взагалі не допускаються в них, на відсотково закодовані послідовності. Кожен небезпечний байт записується як знак відсотка і дві шістнадцяткові цифри. Кодування URL також називається відсотковим кодуванням і визначено в RFC 3986.

Що таке відсоткове кодування?

Відсоткове кодування — схема кодування, яку використовують URL-адреси для представлення небезпечних або зарезервованих символів. Символ перетворюється на один або кілька байтів (UTF-8 для сучасних URL), кожен із яких записується як знак відсотка і його двозначне шістнадцяткове значення. Наприклад, пробіл — це байт 0x20, він записується як %20.

Коли використовувати encodeURIComponent замість encodeURI?

Використовуйте encodeURIComponent, коли кодуєте окреме значення для вставки в URL-адресу — як правило, значення параметра запиту, сегмент шляху або значення фрагмента. Функція кодує зарезервовані символи /, ?, #, & та =, щоб вони не могли випадково порушити структуру URL-адреси навколо. Використовуйте encodeURI, якщо маєте готову URL-адресу і потрібно лише екранувати небезпечні символи (пробіли, символи не-ASCII), не торкаючись структурних зарезервованих символів.

У чому різниця між %20 і +?

Обидва символи можуть позначати пробіл, але в різних контекстах. %20 — стандартне відсоткове кодування пробілу, що допустиме в будь-якому місці URL-адреси. Символ + інтерпретується як пробіл лише всередині даних application/x-www-form-urlencoded — зазвичай у тілі HTML-форми або в рядках запиту, які генерує застарілий код. Нативні функції decodeURIComponent і decodeURI НЕ конвертують + у пробіл, і цей інструмент дотримується тієї ж суворої поведінки: + зберігається точно так, як введено. Якщо декодуєте дані форми і + має означати пробіл — замініть + на пробіл вручну перед декодуванням.

Чи може цей інструмент декодувати рядки запиту?

Так. Вставте закодований рядок запиту (або окреме закодоване значення) у поле введення і перемкніть напрямок на «Декодувати». Для окремого значення параметра використовуйте режим «Компонент», для декодування всієї URL-адреси — режим «Повна URL». Зверніть увагу: інструмент не розбиває рядок запиту на пари «ключ / значення» — він декодує відсотково закодовані символи у введеному тексті.

Чи підтримує цей декодувальник URL символи UTF-8?

Так. Нативні функції JavaScript обробляють відсотково закодовані послідовності як байти UTF-8, тому символи з діакритикою, емодзі та символи нелатинських алфавітів коректно декодуються до вихідної форми. Наприклад, caf%C3%A9 декодується в café, а %F0%9F%98%80 — у 😀. Якщо послідовність не є допустимим UTF-8, декодувальник видає помилку некоректного введення, а не тихо створює символи-замінники.

Чи передаються мої дані на сервер?

Ні. Кодувальник і декодувальник працюють повністю у браузері за допомогою нативних функцій JavaScript. Введені дані ніколи не відправляються на сервер, не зберігаються і не записуються в журнал. Закриття вкладки видаляє все. Це робить інструмент придатним для конфіденційних URL-адрес (внутрішні посилання, токени, підписані URL), які небажано вставляти в сторонні сервіси.

Кодування URL — те саме, що й очищення URL?

Ні. Кодування URL перетворює символи у відсотково закодовану форму і назад, не змінюючи набір параметрів в адресі. Очищення URL — окрема операція: вона видаляє трекінгові параметри utm_source, utm_medium, fbclid, gclid та інші. Якщо потрібно видалити трекери з посилання — скористайтеся спеціалізованим очищувачем URL; ця сторінка лише кодує та декодує.

Чому деякі декодовані URL-адреси досі містять знаки відсотка?

Якщо вихідна URL-адреса була закодована двічі (подвійне кодування), один прохід декодування знімає лише один шар. Наприклад, %2520 декодується в %20, а %20 при повторному декодуванні стає пробілом. Запустіть результат через декодувальник ще раз, якщо він все ще виглядає закодованим. Буквальний знак відсотка, що не є частиною допустимої escape-послідовності (наприклад, abc%), — це недопустиме відсоткове кодування, і декодувальник видасть помилку замість спроби вгадати.

Інші текстові інструменти

Безкоштовні онлайн-інструменти для конвертації, кодування та перетворення тексту

Перетворення регістру

Змінюйте регістр тексту — ВЕРХНІЙ, нижній, Заголовок та інші

Перекладач азбуки Морзе

Конвертуйте текст у код Морзе і назад

Аудіодекодер коду Морзе

Декодування коду Морзе з аудіофайлів або мікрофона

Перекладач двійкового коду

Конвертуйте текст у двійковий код і назад

Кодувальник/Декодувальник Base64

Кодуйте та декодуйте текст Base64

Hex Converter

Конвертуйте текст у шістнадцятковий і назад

Кодувальник/Декодувальник ROT13

Кодувати та декодувати текст за допомогою шифру ROT13

Генератор верхнього індексу

Перетворює текст у надрядковий Unicode там, де це підтримується.

Генератор нижніх індексів

Перетворити текст на нижній індекс Unicode там, де підтримується

Генератор малого тексту

Створюйте текст у малих капітелях, верхньому та нижньому індексі для копіювання та вставки

Генератор закресленого тексту

Миттєво генеруйте Unicode закреслений текст для копіювання та вставки

Зображення в Base64

Конвертувати зображення у рядки Base64 та URI даних

HTML Entity Encoder / Decoder

Кодування та декодування HTML-сутностей, таких як &, <, >, " і '