在这段代码中,存在一个潜在的安全风险,即未转义的HTML。为了解决这个问题,可以使用DOMPurify库来对代码块进行清理和转义。以下是优化后的代码:

const codeBlocks = document.querySelectorAll('article pre code');
codeBlocks.forEach((codeBlock) => {
  const sanitizedContent = DOMPurify.sanitize(codeBlock.innerHTML);
  codeBlock.innerHTML = sanitizedContent;
  hljs.highlightBlock(codeBlock);
});

在优化后的代码中,我们使用DOMPurify.sanitize()方法对代码块的内容进行清理和转义,并将清理后的内容赋值回原始的innerHTML属性中。然后,我们再使用hljs.highlightBlock()方法对转义后的内容进行代码高亮处理。这样可以确保代码块中的HTML内容被正确转义,从而避免潜在的安全风险

你来进行优化corejs38992296 The element with unescaped HTMLcorejs38992294 One of your code blocks includes unescaped HTML This is a potentially serious security riskconst codeBlocks = documentquerySelectorAl

原文地址: http://www.cveoy.top/t/topic/iCcQ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录