[英]Difference between Url Encode and HTML encode
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 引擎本身识别的字符串替换特殊字符以呈现页面内容 - 诸如&
变成&
类的东西&
或<
= <
, >
= >
这可以防止 HTML 引擎将这些字符解释为 HTML 标记的一部分,从而将它们呈现为字符串。
请参阅此参考:
HTML 和 URL 本质上都是非常受限制的语言。 作为一种语言,它们为特定的关键字或运算符添加了含义。 但是,对于这两种语言,关键字几乎总是单个字符。 例如
在每种语言的使用中,虽然有可能以不确保语言含义的方式使用这些结构。 例如,这篇文章包含一个 > 字符。 我不希望它被解释为 HTML,只是文本。
这就是 Encode 和 Decode 方法发挥作用的地方。 这些方法将分别采用一个字符串并将任何将被视为关键字的字符转换为不会被解释为语言的一部分的转义形式。
例如:将 > 传入 HtmlEncode 将返回 >
HTMLEncode 和 URLEncode 处理 HTML 和 URL 中的无效字符,或者更准确地说,需要专门编写才能正确解释的字符。 例如,在 HTML 中,< 和 > 字符用于表示标签。 因此,如果您想编写数学公式,例如 1+1 < 2+2,“<”通常会被解释为标签的开头。 HTMLEncoding 把这个字符变成“<” 这是小于号的编码表示。 URLEncoding 的作用相同,但对于特殊字符不同的 URL,尽管存在一些重叠。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.