Яка різниця між URL Encode та HTML Encode ?
?
стає %3F
HTML кодування буде кодувати символи таким чином , вони дійсні для HTML. Напр. <
Стає<
Яка різниця між URL Encode та HTML Encode ?
?
стає %3F
HTML кодування буде кодувати символи таким чином , вони дійсні для HTML. Напр. <
Стає<
Відповіді:
Кодування HTML уникає спеціальних символів у рядках, що використовуються в документах HTML, щоб уникнути плутанини з елементами HTML, наприклад, зміни
"<hello>world</hello>"
до
"<hello>world</hello>"
Кодування URL робить подібне для рядкових значень в URL, як зміна
"hello+world = hello world"
до
"hello%2Bworld+%3D+hello+world"
urlEncode замінює спеціальні символи символами, які можуть бути зрозумілі веб-браузерам / веб-серверам з метою адресування ... звідси URL. Наприклад, пробіли замінюються на% 20, '=% 27 тощо ...
Дивіться ці посилання:
HtmlEncode замінює спеціальні символи на символьні рядки, які розпізнає сам механізм HTML для відображення вмісту сторінки - такі речі, як & стає & or < = < > = <
цим, заважають механізму HTML інтерпретувати ці символи як частини розмітки HTML і, отже, відображати їх так, ніби вони були струни.
Дивіться це посилання:
І HTML, і URL-адреси є по суті дуже обмеженими мовами . Як мова вони додають значення певним ключовим словам або операторам. Однак для обох цих мов ключові слова майже завжди є окремими символами. Наприклад
У використанні кожної мови, хоча ці конструкції можна використовувати таким чином, щоб не забезпечити значення мови. Наприклад, ця публікація містить символ>. Я не хочу, щоб це трактувалось як HTML, а просто як текст.
Тут починають діяти методи кодування та декодування. Ці методи, відповідно, приймуть рядок і перетворять будь-який із символів, які в іншому випадку вважалися б ключовими словами, у екрановану форму, яка не інтерпретується як частина мови.
Наприклад: Передача> у HtmlEncode поверне & gt;
HTMLEncode та URLEncode мають справу з недійсними символами в HTML та URL-адресах, або, точніше, символами, які потрібно спеціально записати, щоб правильно інтерпретувати. Наприклад, у HTML символи <і> використовуються для позначення тегів. Таким чином, якщо ви хочете написати математичну формулу, щось на зразок 1 + 1 <2 + 2, '<' зазвичай тлумачиться як початок тегу. HTMLEncoding перетворює цей символ у "& lt;" що є закодованим поданням знака менше, ніж. URLEncoding робить те саме, але для URL-адрес, для яких спеціальні символи різні, хоча є певне перекриття.
Я не знаю, якою мовою ви працюєте, але посібник PHP, наприклад, дає хороші пояснення.
URLEкод
Повертає рядок, у якому всі нелітерально-цифрові символи, крім -_. були замінені знаком відсотка (%), за яким слідують дві шістнадцяткові цифри та пробіли, закодовані як знаки плюс (+). Він кодується так само, як кодуються розміщені дані з форми WWW, тобто так само, як і в типі носія application / x-www-form-urlencoded. Це відрізняється від кодування »RFC 1738 (див. Rawurlencode ()) тим, що з історичних причин пробіли кодуються як знаки плюс (+).