0
data
은 XSS의 영향을받습니다. htmlspecialchar()
같은 것을 사용하여 클라이언트에 데이터를 보내기 전에 서버에서 데이터를 살균해야합니까, 아니면 $.get()
이 XSS를 중간 화합니까? 당신은 요소의 텍스트을 변경하고 이후Ajax를 사용하여 표시 할 때 XSS로부터 보호
$.get('getData.php',
function (data){
$('#div1').text(data.div1);
$('#div2').html(data.div2);
$('#textarea').val(data.textarea);
},'json');
Benjamin에게 감사드립니다. 내가 이해할 수 있도록,'.html()'에'htmlspecialchars()'를 사용해야하지만 다른 두 곳에서는 필요하지 않습니다. – user1032531
완전히 신뢰하지 않는 내용으로 시작하려면'.html'을 사용하지 마십시오. _templates_를 클라이언트 측에 저장하고 서버에서 _data_를 전달한 다음 Mustache와 같은 템플릿을 사용하여 템플릿을 렌더링하는 것이 좋습니다 (기본적으로 Mustache는 HTML 문자를 이스케이프 처리합니다). –