·1분 읽기
URL 인코딩 디코딩 이해하기 — 왜 주소에 %20이 붙을까
URL에 %20, %3A 같은 문자가 왜 나타나는지 궁금했나요? URL 인코딩의 원리와 실전 활용법을 쉽게 설명해드릴게요.

🔗
URL 인코더/디코더 바로 사용하기
URL을 인코딩하거나 디코딩하세요
→
URL 인코딩이 필요한 이유
URL(웹 주소)에는 사용할 수 있는 문자가 정해져 있어요. 영문 알파벳, 숫자, 그리고 일부 특수문자(-, _, ., ~)만 안전하게 사용할 수 있죠.
한글, 공백, 특수문자 같은 것들은 URL에 직접 넣으면 문제가 생길 수 있어요. 그래서 이런 문자들을 %XX 형식으로 변환하는데, 이걸 URL 인코딩(퍼센트 인코딩)이라고 해요.
예를 들어 공백은 %20, 한글 '가'는 %EA%B0%80으로 변환돼요.
자주 보는 인코딩 문자
URL에서 자주 만나는 인코딩된 문자들이에요.
- 공백: %20 (또는 +)
- !: %21
- #: %23
- $: %24
- &: %26
- +: %2B
- /: %2F
- :: %3A
- =: %3D
- ?: %3F
- @: %40
검색 결과 URL이나 API 호출 URL에서 이런 문자들을 자주 볼 수 있어요.
URL 인코딩이 사용되는 곳
검색 엔진 쿼리에서 가장 흔하게 볼 수 있어요. 구글에서 '맛집 추천'을 검색하면 URL에 q=%EB%A7%9B%EC%A7%91+%EC%B6%94%EC%B2%9C 이런 식으로 나타나요.
API 개발에서도 필수예요. GET 요청의 쿼리 파라미터에 특수문자가 포함될 때 반드시 인코딩해야 정상 동작해요.
폼 데이터 전송에서도 사용돼요. HTML 폼에서 데이터를 보낼 때 application/x-www-form-urlencoded 형식으로 인코딩되거든요.
Toolkio의 URL 인코더/디코더를 사용하면 브라우저에서 바로 변환할 수 있어요.
인코딩 vs 디코딩 언제 사용하나
인코딩은 URL에 안전하지 않은 문자를 넣어야 할 때 사용해요. API 호출이나 리다이렉트 URL을 만들 때 필요해요.
디코딩은 인코딩된 URL을 사람이 읽을 수 있는 형태로 되돌릴 때 사용해요. 복잡한 URL을 분석하거나 디버깅할 때 유용해요.
JavaScript에서는 encodeURIComponent()로 인코딩, decodeURIComponent()로 디코딩할 수 있어요.