如何在 Javascript 中成功解碼 HTML 實體
Javascript 經常與 XML-RPC 後端等外部來源互動。這些後端可能會傳回包含 HTML 實體的字串,例如 。當嘗試使用 Javascript 將這些字串合併到 HTML 中時,它們可能會按字面意思呈現或顯示為未轉義的 HTML 實體。
要有效地轉義這些 HTML 實體,利用外部來源的技術可能會失敗。相反,請利用現代瀏覽器支援的 DOMParser 方法。其實作方式如下:
function htmlDecode(input) { var doc = new DOMParser().parseFromString(input, "text/html"); return doc.documentElement.textContent; }
用法範例:
console.log(htmlDecode("<img src='myimage.jpg'>")); // "<img src='myimage.jpg'>" console.log(htmlDecode("<img src='dummy' onerror='alert(/xss/)'>")); // ""
此方法成功解碼 HTML 實體,同時防止惡意程式碼的執行。
以上是如何在 JavaScript 中安全地解碼 HTML 實體?的詳細內容。更多資訊請關注PHP中文網其他相關文章!