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 даних