URL 인코딩 / 디코딩

글이나 URL 을 UTF-8 기준 퍼센트 인코딩으로 바꾸거나 %XX 를 글로 되돌리고, 디코딩한 URL 의 쿼리 파라미터를 표로 보여 줍니다.

불러오는 중…

사용법

  1. 인코딩 또는 디코딩을 고릅니다.
  2. 입력에서 쿼리 값 하나나 경로 한 조각처럼 값 하나면 컴포넌트(값)를, 주소 전체면 전체 URL 을 고릅니다.
  3. 입력란에 입력하거나 붙여넣으면 결과가 바로 바뀝니다.
  4. 디코딩 결과에 ? 가 있으면 그 뒤(# 앞까지)가 이름·값 열로 된 쿼리 파라미터 표로 나옵니다.
  5. 복사로 결과를 복사하거나, 바꾸기로 결과를 입력란에 옮기고 방향을 바꿉니다.

자주 묻는 질문

입력한 글이 서버로 전송되나요?
아니요. 브라우저 안에서 변환합니다.
컴포넌트와 전체 URL 중 무엇을 고르나요?
컴포넌트(값)는 영문자·숫자와 - _ . ! ~ * ' ( ) 를 뺀 모든 문자를 인코딩하므로 / ? & = # + 도 바뀝니다. 값 하나에 쓰세요. 전체 URL 은 영문자·숫자·- _ . ! ~ * ' ( ) 에 더해 URL 구조를 이루는 문자(; , / ? : @ & = + $ #)도 그대로 두고, 공백·한글 같은 나머지 문자를 인코딩합니다.
공백은 %20 인가요, + 인가요?
인코딩할 때 공백은 늘 %20 으로 씁니다. 디코딩할 때 컴포넌트는 HTML 폼 데이터처럼 + 를 공백으로 읽고, 전체 URL 은 쿼리(? 뒤)의 + 만 공백으로 읽으며 경로의 + 는 그대로 둡니다. 쿼리에서 더하기 기호 자체는 %2B 로 써야 합니다.
한글은 어떻게 인코딩되나요?
UTF-8 바이트로 인코딩되어 "가" 는 %EA%B0%80 이 됩니다. 디코딩도 UTF-8 을 기준으로 하며, % 뒤에 16진수 두 자리가 없거나 바이트가 올바른 UTF-8 이 아니면 "잘못된 % 표기가 있습니다." 가 표시됩니다.
전체 URL 로 디코딩했는데 %2F, %26 이 그대로인 이유는?
전체 URL 에서는 decodeURI 와 같이 %2F(/), %3F(?), %26(&), %3D(=), %23(#) 처럼 URL 구조를 이루는 문자의 표기를 그대로 둡니다. 이것까지 풀려면 컴포넌트(값)를 고르세요.