내가 얻은 입력이 HTML로 인코딩되었는지 아닌지 확실하지 않은 상황이 있습니다. 어떻게해야합니까? 또한 jQuery를 사용할 수 있습니다.JavaScript에서 HTML로 인코딩 된 값을 처리하는 방법
function someFunction(userInput){
$someJqueryElement.text(userInput);
}
// userInput "<script>" returns "<script>", which is fine
// userInput "<script>" returns &lt;script&gt;", which is bad
내가 탈출 앰퍼샌드 (&
)를 피할 수 있지만,의 위험은 무엇입니까? 어떤 도움이라도 대단히 감사합니다!
중요 사항 :이 사용자 입력 내용은 컨트롤이 아닙니다. 그것은 외부 서비스에서 돌아오고 누군가가 그 서비스를 조작하고 해당 서비스 자체가 제공하는 html 이스케이프를 피할 수 있습니다.
이러한 상황을 피할 필요가 있습니다. 왜 확실하지 않니? – SLaks
입력이 이미 인코딩 된 경우 중요한 이유는 무엇입니까? 사용자가 문자 '<script>'을 입력하면 표시되어야 할 내용입니다. 그것을 인코딩하는 방법은 변경되지 않습니다. –
_ 입력에 HTML 인코딩 여부가 확실하지 않은 상황이 있습니다 .-이 경우는 좋지 않습니다. – Halcyon