jquery 使用 html() 时的 xss 预防

jquery xss prevention when using html()

我有这行代码 jquery,我被告知这行代码容易受到 xss 攻击,因为我在使用 html 注入原始数据之前没有转义它( ) 函数。

请告诉我如何转义数据以使其更安全。 (如果可以解决问题,我可以使用 javascript 代替,即通过 id 等获取元素)

var data= "来自用户或其他地方的一些数据";

$("output_area").html(数据);

你必须使用:

$("output_area").text(data)

如果你想注入 HTML 代码,那么你需要从数据中提取并将它们作为 texts 添加到你自己构建的 HTML 代码中($('<p/>').text(extractedParagraph), 等等).