使用特殊 HTML 实体解码字符串
当接收包含编码 HTML 实体的 JSON 数据时,正确解码它们至关重要。执行此操作的简单 jQuery 方法是:
function decodeHtml(html) { return $('<div>').html(html).text(); }
虽然有效,但此技术被认为是“黑客”。更可靠和首选的方法是使用 DOMParser,如下所示:
function decodeHtml(html) { var txt = document.createElement("textarea"); txt.innerHTML = html; return txt.value; }
此方法不仅可以解码实体,还可以保留 HTML 标签,使其成为更全面且被广泛接受的方法。
展示解码过程的示例:
Input: Entity:&nbsp;Bad attempt at XSS:<script>alert('new\nline?')</script><br> Output: Entity: Bad attempt at XSS:<script>alert('new\nline?')</script><br>
以上是如何有效解码 JSON 数据中的 HTML 实体?的详细内容。更多信息请关注PHP中文网其他相关文章!