업로드 없음, 100% 로컬, 계정 없음

URL 인코더 / 디코더

URL의 특수 문자를 인코딩하거나, 퍼센트 인코딩된 문자열을 디코딩합니다. 모든 것이 브라우저에 머무릅니다.

URL 인코더 / 디코더 작동 방식

URL 인코더/디코더는 URL에 특수 문자를 안전하게 포함하는 형식인 RFC 3986의 퍼센트 인코딩(URL 인코딩이라고도 함)으로 문자열을 변환하거나 반대로 변환합니다. 원시 문자열을 붙여넣어 인코딩하거나, 퍼센트 인코딩된 문자열을 붙여넣어 사람이 읽을 수 있는 형식으로 디코딩합니다. 변환은 JavaScript의 encodeURIComponent와 decodeURIComponent를 사용해 브라우저에서 완전히 실행되며, 입력한 내용은 기기를 벗어나지 않습니다.

URL 인코딩은 쿼리 매개변수, 리디렉션 URI, 정식 링크를 프로그래밍 방식으로 구성할 때마다 중요합니다. 공백은 %20, 앰퍼샌드는 %26, 해시는 %23이 됩니다. 인코딩은 국제화된 도메인 이름과 경로 세그먼트의 비ASCII 문자에도 적용됩니다. 이 도구는 /, ?, # 같은 구조 문자를 보존하면서 전체 URI를 인코딩하는 encodeURI 모드도 제공합니다.

URL 인코더 / 디코더 단계별 사용 방법

  1. 인코딩하거나 디코딩하려는 텍스트를 입력 영역에 붙여넣습니다.
  2. 텍스트를 퍼센트 인코딩하려면 인코딩, 인코딩을 반전하려면 디코딩을 선택합니다.
  3. 쿼리 매개변수 값에는 encodeURIComponent 모드를, 전체 URI에는 encodeURI 모드를 선택합니다.
  4. 출력 영역에서 결과를 복사합니다.

자주 사용되는 사례

  • 개발자가 검색 리디렉션 URL을 구성할 때 특수 문자가 URL 구조를 깨뜨리지 않도록 쿼리 문자열을 퍼센트 인코딩해야 할 때.
  • API 통합자가 웹훅 페이로드에서 퍼센트 인코딩된 콜백 URL을 받아 대상 주소를 확인하기 위해 디코딩해야 할 때.
  • 콘텐츠 편집자가 브라우저에서 악센트 문자가 포함된 URL을 복사하여 Markdown 링크에 사용하기 위해 인코딩해야 할 때.
  • QA 엔지니어가 <, >, & 같은 경계 문자를 제출하기 전에 인코딩하여 입력 유효성 검사 엔드포인트를 테스트할 때.

자주 묻는 질문

encodeURIComponent와 encodeURI의 차이점은 무엇인가요?

encodeURIComponent는 문자, 숫자, - _ . ! ~ * ' ( ) 외의 모든 것을 인코딩합니다. 쿼리 매개변수 값과 같은 개별 구성 요소를 인코딩하는 데 사용합니다. encodeURI는 : / ? # [ ] @ ! $ & ' ( ) * + , ; = 같은 구조 URI 문자를 인코딩하지 않습니다. 입력을 완전한 URI로 가정하기 때문입니다. 값에는 encodeURIComponent, 전체 URL에는 encodeURI를 사용하세요.

여기에 붙여넣은 텍스트가 서버로 전송되나요?

아니요. 인코딩과 디코딩은 브라우저의 JavaScript 엔진에서 완전히 실행되는 JavaScript의 내장 encodeURIComponent와 decodeURIComponent 함수를 호출합니다. 여기에 입력한 내용은 어디로도 전송되지 않습니다.

공백이 %20 대신 +로 표시되는 이유는 무엇인가요?

공백에 +를 사용하는 것은 RFC 3986 퍼센트 인코딩과 다른 HTML 양식 제출에 사용되는 구형 application/x-www-form-urlencoded 형식에서 왔습니다. 이 도구는 엄격한 RFC 3986 퍼센트 인코딩을 사용하므로 공백은 %20이 됩니다. 대상 시스템이 공백에 +를 기대한다면 인코딩 후 수동으로 %20을 +로 바꿔야 합니다.

쿼리 문자열을 포함한 전체 URL을 한 번에 인코딩할 수 있나요?

네, encodeURI 모드를 사용하면 됩니다. 이 모드는 /, ?, =, &, #, 기타 URL 구조 문자를 보존하면서 세그먼트나 매개변수 값에 나타나는 비ASCII 및 예약 문자를 인코딩합니다. 개별 매개변수 값에는 encodeURIComponent만 사용하고 전체 URL에는 사용하지 마세요.

도구가 Unicode 문자와 이모지를 처리하나요?

네. JavaScript의 encodeURIComponent는 먼저 문자를 UTF-8 바이트 시퀀스로 변환한 후 각 바이트를 퍼센트 인코딩합니다. 엄지 척 이모지 같은 이모지는 %F0%9F%91%8D 같은 다중 바이트 시퀀스로 인코딩됩니다. 디코딩은 이 과정을 올바르게 역순으로 수행합니다.