html - 什么时候应该 HTML 转义数据,什么时候应该 URL 转义数据?

标签 html forms escaping

我什么时候应该在我的代码中对数据进行 HTML 转义,什么时候应该进行 URL 转义?我很困惑什么时候使用哪个......

例如,给定一个请求 URL 的元素:

<input type="text" value="DATA" name="URL">

我应该在此处对 DATA 进行 HTML 转义还是在此处进行 URL 转义?

那么元素呢:

<a href="URL" title="URL">NAME</a>

URL 应该是 URL 转义还是 HTML 转义? NAME 呢?

谢谢,Boda Cydo。

最佳答案

URL 编码确保特殊字符如 ?并且 & 不要导致 URL 在接收端被误解。实际上,这意味着您需要对任何可能包含此类字符的动态查询字符串值进行 URL 编码。

HTML 编码可确保特殊字符(如 > 和 ")不会导致浏览器误解标记。因此,您需要对输出到可能包含此类字符的标记中的任何值进行 HTML 编码。

所以在你的例子中:

  • 数据需要进行 HTML 编码。
  • URL 的任何动态部分都需要进行 URL 编码,然后整个字符串需要进行 HTML 编码。
  • 名称需要进行 HTML 编码。

关于html - 什么时候应该 HTML 转义数据,什么时候应该 URL 转义数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2151921/

相关文章:

javascript - 为图像添加旋转效果

html - 为什么要有双底边框?

javascript - Jquery 选择带斜杠的属性

python - 如何在python中存储包含两个单引号( ' ) and double quote( ")的字符串

html - 并排放置2张图片

javascript - Bootstrap 模态主体最大高度 100%

php - 如何将 mysql 中的行乘以表单中的数量?

javascript - AJAX - 经典 ASP - 发布表单

php - PHP中的 "Use of undefined constant"通知是什么意思?

string - Lua SQL 转义字符串(尝试) '"附近未完成的字符串}'