Ескейп / розескейп HTML
Ескапінг та деескапінг HTML
Ви можете перетворити спеціальні символи в HTML на символьні посилання або перетворити символьні посилання назад на їхні вихідні символи.
Результат перекладу
Що таке екранування HTML?
Ескейп-кодування HTML — це процес заміни символів, що мають особливе значення в HTML, на символьні посилання. Наприклад, знак «менше ніж» позначається як <, знак «більше ніж» — як >, а амперсанд — як &. Це запобігає їх інтерпретації як HTML-тегів, що дозволяє відображати вихідний код та введені рядки на екрані саме так, як вони є.
Зняття екранування робить навпаки: воно перетворює символьні посилання, такі як &lt; та &quot;, назад на їхні оригінальні символи. Це корисно для перевірки екранованих рядків, що містяться в логах, шаблонах, вмісті CMS, текстах електронних листів, відповідях API тощо.
Цей інструмент не надсилає вхідні дані на сервер; натомість він виконує перетворення повністю в браузері за допомогою JavaScript. Навіть під час роботи з конфіденційним текстом його використання є безпечнішим, ніж використання інструментів перетворення, що передбачають мережеву комунікацію. Однак під час вбудовування результатів перетворення у веб-сторінку переконайтеся, що вжито відповідних заходів безпеки з урахуванням використовуваного фреймворку та місця, де відображається вміст.
Як користуватися
- Вставте HTML-код або символьні посилання, які потрібно перетворити, у поле введення.
- Виберіть «Escape HTML» або «Unescape HTML».
- Натиснувши «Перетворити», ви автоматично перейдете до розділу результатів.
- За необхідності скопіюйте результат або поміняйте місцями вхідні дані та результат, щоб виконати зворотне перетворення.
Приклад перекладу
<div class="message">Tom & Jerry</div>
↓
<div class="message">Tom & Jerry</div>
Застереження щодо використання
- Ескейп допомагає створювати рядки для відображення, але не замінює захист від SQL-ін'єкцій або кодування URL-адрес.
- Якщо вставляти рядок без екранування безпосередньо в `innerHTML` або подібне, існує ризик виконання скриптів, залежно від вмісту.
- Цей інструмент переважно конвертує символи &, <, >, подвійні та одинарні лапки.
Поширені запитання
Що таке екранування HTML?
Це передбачає перетворення символів, що мають особливе значення в HTML, на символьні посилання, щоб їх можна було безпечно відображати на екрані у вигляді тексту.
Що таке розшифрування HTML?
Цей процес перетворює символьні посилання, такі як &lt; та &amp;, назад на їхні оригінальні символи, < та &.
Чи будуть введені дані надіслані на сервер?
Ні. Процес конвертації повністю виконується за допомогою JavaScript у браузері.
Які символи будуть перетворені?
В першу чергу це стосується символів «&», «<», «>», подвійних та одинарних лапок.
Чи можна відображати HTML-теги безпосередньо на екрані?
Так. Якщо ви використовуєте результат з екранованими символами, він не буде інтерпретуватися як тег і відображатиметься як рядок.
Чи можна це використовувати як засіб захисту від XSS?
Хоча це є одним із основних заходів щодо відображення рядків у тілі HTML-коду, необхідно вжити відповідних заходів для кожного місця виведення, наприклад, у значеннях атрибутів, JavaScript та URL-адресах.
Чим це відрізняється від кодування URL-адрес?
Ескейп-кодування HTML застосовується до спеціальних символів у HTML, тоді як кодування URL перетворює символи, які не можна використовувати в URL-адресах, у форму з відсотковим кодуванням.
Чи будуть також перетворені розриви рядків та пробіли?
Стандартні розриви рядків та пробіли будуть збережені без змін. Будь ласка, налаштуйте розриви рядків у HTML-відображенні окремо за допомогою CSS або тегів `br`.
Що станеться, якщо застосувати подвійний екранний символ?
Наприклад, знак «&» < знову перетворюється на &amp;lt;. Будьте уважні, щоб не перетворювати його більше разів, ніж це необхідно.
Чи можна скасувати перетворення?
Так. Ви можете скасувати зміну, помінявши місцями вхідні дані та результат і вибравши протилежний метод перетворення.
Чи можете ви перекладати великі обсяги тексту?
Перетворення можливе в межах обчислювальної потужності та обсягу пам'яті вашого браузера. При обробці дуже великих наборів даних продуктивність може знижуватися.