제 웹 페이지에 제 3 자 코드 (제 3 자 서비스가 제공함)를 삽입했는데 제 HTML 검증이 잘못되었습니다. 문제를 어떻게 해결할 수 있습니까? CDATA가 트릭을하고 있지 않습니다. 이 내 샘플 코드 조각입니다 :HTML 유효성 검사기에서 자바 스크립트 코드를 CDATA가 보호하지 않는 이유는 무엇입니까?
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>test</title>
<script type="text/javascript">
/*<![CDATA[*/
document.write('<script src="//sharebutton.net/plugin/sharebutton.php?type=horizontal&u=' + encodeURIComponent(document.location.href) + '"></scr' + 'ipt>');
/*]]>*/
</script>
</head>
<body>
<p>test</p>
</body>
</html>
그리고 here 당신이 검증의 결과를 확인할 수 있습니다.
왜 코드가 XSS- 주사처럼 보이는지 설명 할 수 있습니까? – Mouser
그 스크립트의 끝은 매우 이상하거나 의심스러운' scr '+'ipt> ''로 보입니까? – Liam
@Liam - ''이 실제 스크립트 요소의 종료 태그로 해석되지 않게합니다. – Quentin