{ }JSONKit.tools

URL 인코딩 (온라인)

URL용으로 텍스트를 퍼센트 인코딩합니다. 쿼리 문자열 안에 들어갈 값이면 구성 요소를, 구조를 깨지 않고 주소를 이스케이프하려면 전체 URL을 고르세요.

인코딩⇄디코딩
모드

텍스트

인코딩 결과

입력을 기다리는 중…

이 도구에 대하여

URL 인코딩은 URL이 그대로 담을 수 없는 문자를 퍼센트 기호와 UTF-8 바이트 값으로 바꿉니다. 모드는 생각보다 중요합니다. 주소 전체를 구성 요소 모드로 인코딩하면 그 주소 자체의 슬래시와 콜론까지 이스케이프되어 어떤 서버도 라우팅하지 못할 것이 나옵니다. 반대로 쿼리 값을 전체 URL 모드로 인코딩하면 값을 잘라 버릴 &와 =가 그대로 남습니다. 텍스트가 값인지 주소인지로 고르세요.

사용 방법

  1. 1텍스트나 URL을 왼쪽 패널에 붙여넣습니다.
  2. 2쿼리 값이면 구성 요소를, 완전한 주소면 전체 URL을 고릅니다.
  3. 3결과를 복사합니다. 되돌리는 작업은 URL 디코딩 페이지가 바로 옆에 있습니다.

자주 묻는 질문

›두 모드는 무엇이 다른가요?

구성 요소는 URL에서 특별한 의미를 갖는 것을 모두 이스케이프합니다(& = ? / # :). 텍스트가 값 안으로 들어가기 때문입니다. 전체 URL은 그 문자들을 건드리지 않아 주소가 구조를 유지하게 하고, 공백과 따옴표, 비 ASCII만 이스케이프합니다.

›쿼리 매개변수에는 무엇을 써야 하나요?

항상 구성 요소입니다. &나 =가 든 값은 그러지 않으면 다른 매개변수의 시작으로 읽힙니다. 검색어가 조용히 잘리는 전형적인 버그의 정체입니다.

›공백이 +가 아니라 %20이 되는 이유는?

퍼센트 인코딩은 어디서나 %20을 씁니다. + 관례는 HTML 폼 전송(application/x-www-form-urlencoded)에만 속하므로 폼 본문이 기대되는 곳에서만 쓰세요.

›비라틴 문자는 어떻게 처리되나요?

먼저 UTF-8로 부호화되므로 한 문자가 퍼센트 이스케이프 두 개에서 네 개가 됩니다. 키릴 문자나 한자 텍스트가 인코딩 후 크게 불어나는 이유입니다.

›이 문자들이 정말 위험한가요?

비예약 문자(A-Z a-z 0-9 - _ . ~)는 이스케이프할 필요가 전혀 없습니다. 나머지는 예약된 의미가 있거나 온전히 전달된다는 보장이 없으므로 인코딩해 두는 편이 안전합니다.