HTML 实体编码与解码

为 HTML 转义特殊字符,或将常见实体还原为文本。

处理方式

在文本上下文中编码可以避免文本被当作标记解析,但不是完整的 XSS 防护;应用中应使用符合上下文的转义。

将 &、<、>、" 和单引号替换为 HTML 实体。

调试场景

编码一个包含 &、尖括号和引号的不可信显示字符串,然后只把结果放入 HTML 文本节点测试。对于属性、URL、JavaScript、CSS 或允许的富文本,应使用针对准确上下文的框架编码器或清理器。

如何解读结果

编码会替换少量字符,避免文本在基本文本上下文中被解析成标记。解码常见实体会重新产生标记字符。两种操作都不能判断哪些元素、属性、协议或脚本行为安全。

输入字段参考

模式
示例默认值: 编码
输入
示例默认值: 已提供示例输入

常见错误

  • 把密钥、凭据、客户记录或其他生产数据粘贴到浏览器工具或可分享 URL。
  • 把文本节点转义当作属性、URL、脚本、样式或富 HTML 的完整清理器。
  • 把便捷预览当成目标运行时、解析器、数据库或安全控制的验证结果。

使用结果前的检查清单

  1. 把输入缩减为仍可复现问题的模拟示例。
  2. 在允许标记时使用框架的上下文感知转义和白名单清理器。
  3. 发布前把确认后的输入和预期输出加入项目回归测试。

用于生产前需要确认的问题

编码等于清理 HTML 吗?

不等于。它只针对文本上下文转义,不会删除不安全 HTML 或脚本。

输入会发送到服务器吗?

不会。处理在浏览器中完成。

独立开发者工具,生产使用前请检查输出。

相关深度开发指南

时间、URL 与 Web 互操作:测试边界而非表象

Web 值常常看起来可读,却携带隐藏的单位、上下文或兼容性假设。本指南让每个值通过真正消费它的系统进行验证。

阅读指南