본문 바로가기

URL 인코더 · 디코더

URL/쿼리 파라미터를 퍼센트 인코딩(%EA%B0%80)하거나 원래 텍스트로 디코딩합니다.

브라우저에서 로컬 처리 · 서버 업로드 없음

쿼리스트링 분석

URL 또는 key=value&key2=value2 형태의 쿼리스트링을 입력하면 파라미터별로 분해해 보여드립니다.

URL 인코더 · 디코더 소개

URL 인코더·디코더는 주소에 넣을 수 없는 문자를 %EA%B0%80 같은 퍼센트 표기로 바꾸고 되돌립니다. 검색어가 들어간 링크를 만들거나, 로그에 남은 인코딩된 주소를 읽거나, 쿼리 파라미터가 제대로 넘어갔는지 확인할 때 씁니다.

두 가지 모드의 차이를 아는 것이 이 도구의 핵심입니다. 구성요소 모드(encodeURIComponent)?, &, =, /처럼 URL의 구조를 이루는 문자까지 전부 바꿉니다. 파라미터 값 하나를 통째로 집어넣을 때 써야 하는 방식입니다. 값 안에 &가 들어 있는데 이걸 안 바꾸면 거기서 파라미터가 끊겨 버리기 때문입니다. 전체 URL 모드(encodeURI)는 구조 문자를 그대로 두고 공백과 한글만 바꿔 주소의 형태를 유지합니다. 완성된 URL 하나를 다듬을 때 씁니다. 한글은 UTF-8 바이트로 쪼갠 뒤 각 바이트를 %XX로 적으므로 '한' 한 글자가 %ED%95%9C 세 덩어리가 됩니다.

가장 흔한 사고는 이중 인코딩입니다. 이미 인코딩된 문자열을 한 번 더 인코딩하면 %%25로 바뀌어 %25ED%2595%259C처럼 되고, 받는 쪽에서 한 번만 디코딩하면 원래 글자가 나오지 않습니다. 디코딩이 오류를 내는 경우도 원인이 정해져 있습니다. % 뒤에 16진수 두 자리가 오지 않거나(%ZZ, 홀로 있는 %) UTF-8로 해석되지 않는 바이트열일 때입니다. 이럴 때는 입력이 이미 디코딩된 상태는 아닌지 먼저 확인해 보세요.

사용 방법

  1. 인코딩 또는 디코딩 탭을 선택하세요.
  2. 값 일부만 변환하려면 구성요소(encodeURIComponent), URL 전체를 변환하려면 전체 URL(encodeURI) 모드를 고르세요.
  3. 입력창에 텍스트나 URL을 입력하면 결과가 실시간으로 변환됩니다.
  4. 결과를 복사 버튼으로 가져가거나, URL을 입력해 아래 쿼리스트링 표로 파라미터를 확인하세요.

자주 묻는 질문

‘구성요소’와 ‘전체 URL’ 모드는 어떻게 다른가요?
구성요소(encodeURIComponent)는 ?, &, =, / 등 URL 구조를 이루는 문자까지 모두 변환합니다. 파라미터 값 하나를 안전하게 넣을 때 쓰세요. 전체 URL(encodeURI)은 이런 구조 문자는 그대로 두고 공백·한글 등만 변환해 URL 전체 형태를 유지합니다.
한글이나 이모지는 어떻게 인코딩되나요?
UTF-8 바이트로 변환된 뒤 각 바이트가 %XX 형태로 표기됩니다. 예를 들어 ‘한’은 %ED%95%9C처럼 3바이트로 표현됩니다. 디코딩 시 다시 원래 글자로 복원됩니다.
디코딩이 오류가 나는 이유는 무엇인가요?
% 뒤에 16진수 두 자리가 오지 않거나(예: %ZZ, % 단독), UTF-8로 해석되지 않는 바이트열이면 URIError가 발생합니다. 이때는 입력의 % 부분을 확인하거나, 이미 디코딩된 문자열은 아닌지 점검하세요.
공백이 + 가 아니라 %20 으로 바뀌는데 맞나요?
둘 다 쓰이지만 쓰이는 자리가 다릅니다. HTML 폼을 전송할 때 쓰는 형식에서는 공백을 +로 적고, URL의 경로나 일반적인 퍼센트 인코딩에서는 %20을 씁니다. 이 도구는 표준 퍼센트 인코딩을 따르므로 %20이 나오며, 폼 형식이 필요하면 결과의 %20을 +로 바꿔 주세요.