다플 로고다플 도구모음
🔗
변환

URL 디코더 / 인코더

URL 인코딩된 문자열을 디코딩하거나, 일반 텍스트를 URL 인코딩하세요.

공유하기

공유하기

사용법

디코딩 모드에서는 %ED%95%9C%EA%B8%80 같은 URL 인코딩된 문자열을 원래 텍스트로 변환합니다. 인코딩 모드에서는 한글, 특수문자 등을 URL에서 사용 가능한 형태로 변환합니다.

encodeURI vs encodeURIComponent

encodeURI — 전체 URL 인코딩

URL 구조를 유지하면서 인코딩합니다. / ? : @ & = + $ # 같은 URL 구분자는 그대로 둡니다.

encodeURI('https://ex.com/path?name=홍길동')
// → 'https://ex.com/path?name=%ED%99%8D...'
//    ↑ : // . / ? = 는 그대로, 한글만 인코딩

완성된 URL 전체를 그대로 인코딩할 때 사용

encodeURIComponent — 쿼리스트링 값 인코딩

URL 구분자(& = + ? /)까지 모두 인코딩합니다. 값 내부의 특수문자가 URL 구조를 깨뜨리지 않도록 보호합니다.

encodeURIComponent('a=1&b=2')
// → 'a%3D1%26b%3D2'
//    ↑ = 와 & 까지 인코딩됨

쿼리스트링 값 하나를 인코딩할 때 사용

상황사용 함수
URL 전체를 그대로 전달encodeURI
쿼리스트링 값 하나 인코딩encodeURIComponent
API에 URL을 파라미터로 전달encodeURIComponent
fetch('/api?url=' + someUrl)encodeURIComponent(someUrl)

💡 대부분의 실무에서는 encodeURIComponent를 씁니다. 값 안에 &, =, + 같은 문자가 섞이면 쿼리스트링이 깨지기 때문입니다.

%uXXXX — 비표준 유니코드 인코딩

Internet Explorer와 오래된 ASP/Java 레거시 시스템에서 사용하던 비표준 방식입니다. RFC 표준이 아니며, decodeURIComponent()로는 디코딩되지 않습니다.

방식한글 예시특징
%XX%ED%95%9C%EA%B8%80RFC 표준, UTF-8 바이트 인코딩
%uXXXX%uD55C%uAE00비표준, IE/레거시, 유니코드 코드포인트 직접 인코딩

💡 escape() 함수의 결과가 %uXXXX 형식입니다. 이 함수는 deprecated 상태이므로 새 코드에서는 사용하지 마세요.