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

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 상태이므로 새 코드에서는 사용하지 마세요.

URL 디코더 이용 안내

URL 디코더란?

URL 인코딩(%7B%22...)된 문자열을 디코딩하거나, 일반 텍스트를 URL 인코딩하세요.

일반 문자열을 encodeURIComponent 방식의 퍼센트 인코딩으로 바꾸거나 `%EA%B0%80` 같은 값을 원래 UTF-8 문자로 복원합니다.

URL 디코더 사용 방법

  1. 1

    입력 준비

    변환할 일반 텍스트 또는 퍼센트 인코딩 문자열을 붙여 넣으세요.

  2. 2

    옵션 설정

    URL 인코딩과 디코딩 중 필요한 방향을 고르고 전체 주소인지 개별 값인지 확인하세요.

  3. 3

    결과 확인

    변환된 문자열에서 예약문자와 한글이 예상대로 유지됐는지 확인해 복사하세요.

기능과 사용 전 확인사항

처리 범위

쿼리 파라미터와 로그에 인코딩된 한글·특수문자를 읽고, URL 구성 요소에 넣을 텍스트를 안전한 형태로 준비할 수 있습니다.

사용 전 확인

주소 전체를 한꺼번에 인코딩하면 `:`, `/`, `?`, `&` 같은 구분자까지 바뀔 수 있습니다. 전체 URL인지 개별 값인지 구분해 처리하세요.

자주 묻는 질문

URL 인코딩과 디코딩을 모두 할 수 있나요?

일반 텍스트를 퍼센트 인코딩으로 바꾸거나 `%EA%B0%80` 같은 문자열을 원문으로 되돌릴 수 있습니다. 한글과 공백이 포함된 값을 주소의 쿼리 파라미터로 전달할 때는 인코딩하고, 로그에서 원문을 읽을 때는 디코딩을 사용하세요.

URL 전체와 일부 값 중 무엇을 입력해야 하나요?

전체 주소 또는 쿼리 파라미터 값만 입력할 수 있지만, 예약문자까지 변환할지 결과를 확인한 뒤 사용하세요. 일반적으로 `?` 뒤의 개별 값만 처리하면 주소 구조를 유지할 수 있으며 변환 후 실제 링크가 열리는지 확인하세요.

잘못된 퍼센트 인코딩은 어떻게 되나요?

`%` 뒤에 올바른 16진수 바이트가 없는 문자열은 디코딩 오류가 발생할 수 있으므로 원본 값을 확인하세요. 여러 번 인코딩된 값은 한 번 디코딩해도 `%` 문자열이 남을 수 있으므로 원본이 몇 차례 처리됐는지 확인해야 합니다.

관련 글