DT Dev Tools

String Escaper — Екранування та зняття екранування рядків

Екрануйте та знімайте екранування рядків для JSON, JavaScript, HTML, URL і послідовностей зі зворотною похилою рискою в браузері. Безкоштовно, в обидва боки, без завантажень.

🔒 Працює повністю у вашому браузері — нічого не завантажується

Advertisement

Що робить String Escaper

String Escaper перетворює текст у екрановані форми, що використовуються в п’яти поширених контекстах, і назад. Екранування JSON обгортає ваш текст як коректний літерал рядка JSON, кодуючи лапки, зворотні похилі риски та керівні символи, як-от новий рядок і табуляція. Екранування JavaScript робить те саме для вихідного коду й додатково обробляє одинарні лапки та зворотні апострофи, тож результат безпечний у будь-якому роздільнику рядків JavaScript. Екранування HTML замінює зарезервовані символи &, <, > і лапки відповідними сутностями, щоб текст відображався як дані, а не як розмітка. Екранування URL застосовує відсоткове кодування до значення для використання в рядку запиту або сегменті шляху, а екранування зворотною похилою рискою обробляє загальні послідовності \n, \t, \r та \\, які трапляються в багатьох форматах конфігурацій і логів.

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

Приватна робота в браузері

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

Інтерфейс тримає вибір формату, вхідні та вихідні дані поруч, щоб ви могли перевірити перетворення перед копіюванням. Результати все одно варто оцінювати в контексті: правильне екранування залежить від того, куди саме буде вставлено значення, а рядок, безпечний в одному місці, наприклад у текстовому вузлі HTML, може потребувати іншої обробки в іншому, як-от в атрибуті, блоці скрипта чи URL.

Практичні поради

Обирайте формат за призначенням, а не за джерелом: текст для файлу JSON потребує екранування JSON, значення для рядка запиту — екранування URL, а вміст, що відображається на сторінці, — екранування HTML. Будьте обережні, поєднуючи контексти — значення, яке потрапляє в тег script у HTML, може вимагати і екранування JavaScript, і HTML — бо застосування лише одного залишає ризик ін’єкції. Знімаючи екранування, переконайтеся, що вхідні дані справді мають вибраний формат, адже невідповідні формати можуть непомітно дати оманливий результат. Для результатів, критичних з погляду безпеки, віддавайте перевагу вбудованим кодувальникам вашого фреймворку, які розуміють увесь контекст, а цей інструмент використовуйте для огляду, підготовки та швидких виправлень.

Як користуватися

  1. Оберіть форматВиберіть екранування JSON, JavaScript, HTML, URL або зворотною похилою рискою.
  2. Екрануйте або зніміть екрануванняВиконайте перетворення в будь-який бік для ваших даних.
  3. Скопіюйте результатПерегляньте результат і скопіюйте його назад у код.

Часті запитання

Які формати екранування підтримуються?
Рядок JSON, рядок JavaScript, HTML, компонент URL та загальні послідовності зі зворотною похилою рискою — і для екранування, і для зняття екранування.
Чим відрізняється екранування JSON від JavaScript?
Екранування JSON створює суворий літерал рядка JSON, тоді як екранування JavaScript також обробляє символи на кшталт одинарних лапок і зворотних апострофів, що використовуються в коді JS.
Чи завантажується мій текст?
Ні. Екранування та зняття екранування повністю виконуються у вашому браузері.
Advertisement