이지유틸

관련 유틸

URL 인코더/디코더

URL과 한글 주소를 퍼센트 인코딩하거나 원래 문자로 되돌리세요.

파라미터 값: ?q= 뒤의 값처럼 일부만 변환할 때 (:, /, ? 도 변환) · 전체 URL: 주소 전체를 변환할 때 (:, /, ? 유지)

결과

퍼센트 인코딩 완벽 정리: URL이 %EC%95%88 처럼 보이는 이유

모든 URL은 제한된 ASCII 문자만 이해하는 시스템들을 거쳐 전달됩니다. 퍼센트 인코딩(RFC 3986)이 그 다리 역할을 합니다. 안전 문자 집합 밖의 모든 바이트는 % 뒤에 16진수 값을 붙인 형태로 변환되죠. 한글, 공백, 특수문자가 웹을 통과하는 방식이 바로 이것입니다.

1. 이 도구가 필요한 순간

  • API 요청 작성: &, =, 공백이 포함된 쿼리 값은 인코딩하지 않으면 서버가 잘못 해석합니다.
  • 로그·분석 데이터 확인: 디코딩하면 사용자가 실제로 검색한 키워드가 보입니다.
  • 한글 URL 공유: 메신저에 인코딩된 형태로 복사될 때 디코딩하면 읽기 좋은 주소로 되돌릴 수 있습니다.

2. 파라미터 값 vs 전체 URL

encodeURIComponent는 :, /, ?, #까지 전부 이스케이프하므로 파라미터 값 하나에 적합합니다. encodeURI는 이런 구조 문자를 보존해 주소 전체의 형태를 유지합니다. 둘을 바꿔 쓰면 이중 인코딩된 파라미터나 깨진 경로 같은 고전적인 버그가 발생합니다.

3. 흔한 함정

이중 인코딩(%20이 %2520이 되는 것)은 이미 인코딩된 문자열을 다시 인코딩할 때 생깁니다. 디코딩 오류는 대개 % 뒤에 16진수 두 자리가 오지 않는 경우입니다. 확실하지 않다면 텍스트가 더 이상 바뀌지 않을 때까지 반복해서 디코딩해보세요.

4. 브라우저에서만 처리됩니다

변환은 브라우저 내장 함수로만 수행되며 입력값은 어떤 서버로도 전송되지 않습니다. 토큰이나 세션 값이 포함된 URL도 안심하고 변환하세요.

"URL은 브라우저와 서버 사이의 계약입니다 — 퍼센트 인코딩은 그 계약을 유효하게 지켜주는 공증인입니다."