URL Encode和HTML Encode之间有什么区别?
答案 0 :(得分:76)
HTML编码转义HTML文档中使用的字符串中的特殊字符,以防止与更改
等HTML元素混淆"<hello>world</hello>"
到
"<hello>world</hello>"
URL编码对URL中的字符串值执行类似操作,例如更改
"hello+world = hello world"
到
"hello%2Bworld+%3D+hello+world"
答案 1 :(得分:23)
urlEncode将特殊字符替换为Web浏览器/ Web服务器可以理解的字符,以便解决...因此URL。例如,空格被替换为%20,'=%27等...
请参阅以下参考资料:
HtmlEncode将特殊字符替换为HTML引擎自身识别的字符串,以呈现页面内容 - 例如&amp;变为& or < = < > = <
这会阻止HTML引擎将这些字符解释为HTML标记的一部分,从而将它们呈现为字符串。
参见此参考:
答案 2 :(得分:13)
HTML和URL本质上都是非常受约束的语言。作为一种语言,它们为特定关键字或运营商增加了意义但对于这两种语言,关键字几乎总是单个字符。例如
在使用每种语言时,虽然可以以不确保语言含义的方式使用这些结构。例如,这篇文章包含一个&gt;字符。我不希望它被解释为HTML,只是文本。
这是编码和解码方法发挥作用的地方。这些方法将分别采用字符串并将任何原本将被视为关键字的字符转换为转义形式,而不会将其解释为语言的一部分。
例如:传递&gt;进入HtmlEncode将返回&amp; gt;
答案 3 :(得分:3)
HTMLEncode和URLEncode处理HTML和URL中的无效字符,或者更准确地说,是需要专门编写才能正确解释的字符。例如,在HTML中&lt;和&gt;字符用于表示标签。因此,如果你想写一个数学公式,像1 + 1&lt; 2 + 2,'&lt;'通常会被解释为标签的开头。 HTMLEncoding将此字符转换为“&amp; lt;”这是小于号的编码表示。 URLEncoding也是如此,但是对于特殊字符不同的URL,尽管存在一些重叠。
答案 4 :(得分:1)