2026-05-18 · 1분 읽기
HTML entities vs URL encoding
다른 context에는 다른 escape가 필요합니다 — 섞으면 security와 parsing이 깨집니다.
HTML entity는 markup에 삽입되는 text를 보호합니다.
URL encoding은 path와 query value의 reserved character를 보호합니다.
이 비교를 읽는 방법
삽입하는 layer에 맞게 encode하세요: HTML text node ≠ query parameter.
| 방식 | 데이터 처리 | 일반적인 속도 | 적합한 용도 |
|---|---|---|---|
| HTML entity encode/decode | 로컬 텍스트 | 즉시 | Template, CMS HTML, markup을 포함한 JSON string |
| URL encode/decode | 로컬 텍스트 | 즉시 | Query string, redirect URL, form submission |
핵심 요약
- Composite payload는 inner HTML을 먼저 escape하고, 필요하면 parameter를 URL-encode하세요.
- 전체 HTML document를 URL-encode해 browser가 markup으로 처리할 것이라 기대하지 마세요.
자주 묻는 질문
HTML entities vs URL encoding에서는 어떻게 선택해야 하나요?
다른 context에는 다른 escape가 필요합니다 — 섞으면 security와 parsing이 깨집니다.
HTML Entity Encode/Decode은 언제 열어야 하나요?
이 비교가 해당 워크플로를 가리키고 다음 단계를 실행할 준비가 되었을 때 HTML Entity Encode/Decode을 여세요.
비교할 때 놓치기 쉬운 점은 무엇인가요?
데이터 경계, 입력 형식, 실패 시 확인 경로를 먼저 점검하세요.