解碼HTML 實體:尋找正確的方法
在Web 程式設計領域,JSON 回應通常可能包含需要的編碼HTML 實體進行解碼以正確顯示。例如,您可能會遇到帶有編碼為“'”的撇號的 JSON 字串。
解碼此類實體的常見方法涉及利用 jQuery 的 HTML 解析功能。然而,由於其間接性質,這種方法可能被認為是 hacky。
要獲得更完善的解決方案,請考慮以下內容:
function decodeHtml(html) { var txt = document.createElement("textarea"); txt.innerHTML = html; return txt.value; }
此方法利用瀏覽器的本機機制來準確地解碼 HTML 實體。與 jQuery 方法不同,它還保留字串中存在的任何 HTML 標籤,確保解碼內容的保真度。
對於實際演示,請考慮以下內容例如:
輸入:
Entity:&nbsp;Bad attempt at XSS:<script>alert('new\nline?')</script><br>
輸出:
Entity: Bad attempt at XSS:<script>alert('new\nline?')</script><br>
如你所觀察到的,解碼過程不僅保留了特殊的HTML實體,也保留了字串中的 HTML 標籤,保持了原始內容的完整性。
以上是如何有效解碼 JSON 回應中的 HTML 實體?的詳細內容。更多資訊請關注PHP中文網其他相關文章!