웹에서 URL을 다룰 때 특수문자나 한글이 이상하게 변환되는 것을 본 적이 있을 겁니다. 이것이 URL 인코딩입니다.
URL 인코딩이란?
URL에서 사용할 수 없는 문자를 퍼센트(%) 기호와 16진수로 변환하는 것입니다.
예: 공백 → %20, 한글 "안녕" → %EC%95%88%EB%85%95
왜 필요한가?
URL에는 사용 가능한 문자가 제한되어 있습니다:
- 알파벳 (A-Z, a-z)
- 숫자 (0-9)
- 일부 특수문자 (- _ . ~)
그 외의 문자(한글, 공백, 특수문자)는 인코딩이 필요합니다.
자주 사용되는 인코딩
- 공백: %20 또는 +
- &: %26
- =: %3D
- ?: %3F
- /: %2F
- #: %23
인코딩 방식
encodeURIComponent
쿼리 파라미터 값을 인코딩할 때 사용합니다. 대부분의 특수문자를 인코딩합니다.
encodeURI
전체 URL을 인코딩할 때 사용합니다. URL 구조 문자(:, /, ?, #)는 유지합니다.
실제 활용 예시
검색 쿼리
https://search.com?q=한글 검색 →
https://search.com?q=%ED%95%9C%EA%B8%80%20%EA%B2%80%EC%83%89
파일 다운로드
한글 파일명을 URL에 사용할 때 인코딩 필요
마무리
URL 인코더/디코더로 쉽게 변환할 수 있습니다. 웹 개발, API 연동 시 유용합니다.