0

디코딩 결과

URL 인코딩

인코딩 결과

URL 인코딩
스페이스 (공백)

URL 인코딩에 대해

URL 인코딩은 URL에 포함되는 문자열을 안전하게 표현하기 위한 인코딩 방식입니다. 정식 명칭은 URI 사양인 RFC 3986에서 정의하는 "퍼센트 인코딩 (percent-encoding)"입니다.

URL에서 특별한 의미를 갖는 문자나 URL에서 그대로 다루기 어려운 문자를 퍼센트 기호 (%)와 2자리 16진수 형식으로 변환합니다.

예를 들어 공백은 %20, 느낌표 (!)는 %21, 일본어 문자 "あ"는 UTF-8에서 %E3%81%82로 표현됩니다.

URL 인코딩에서는 문자열을 선택한 문자 인코딩의 바이트열로 변환한 뒤, 필요한 각 바이트를 %HH 형식으로 나타냅니다. DenCode에서는 RFC 3986의 비예약 문자, 즉 영숫자와 -, ., _, ~는 변환하지 않고, 그 밖의 문자를 퍼센트 인코딩합니다.

문자URL 인코딩 후설명
AA영숫자는 비예약 문자이므로 변환하지 않습니다.
---, ., _, ~는 비예약 문자이므로 변환하지 않습니다.
/%2FURL 경로 구분자로 의미를 가지므로 값으로 사용할 때는 인코딩합니다.
?%3F쿼리 문자열의 시작을 나타내는 예약 문자입니다.
&%26쿼리 매개변수를 구분하는 예약 문자입니다.
=%3D쿼리 매개변수의 이름과 값을 구분하는 예약 문자입니다.
공백%20URL의 퍼센트 인코딩에서는 %20, application/x-www-form-urlencoded에서는 +로 인코딩합니다.
+%2B+ 자체를 값으로 사용할 때는 인코딩해야 합니다.
%E3%81%82UTF-8에서는 3바이트열로 인코딩됩니다.

예를 들어 "Hello, world!"를 URL 인코딩하면 다음과 같습니다.

Hello%2C%20world%21

이 예에서는 쉼표 (,)가 %2C, 공백이 %20, 느낌표 (!)가 %21로 변환됩니다.

application/x-www-form-urlencoded의 공백 표기

HTML 폼 전송 등에 사용되는 application/x-www-form-urlencoded에서는 공백을 +로 나타낼 수 있습니다. 이 형식은 HTML Standard에서 폼 전송용 인코딩으로 정의되어 있습니다.

DenCode에서는 인코딩 시 공백을 %20 또는 + 중 어느 형식으로 출력할지 선택할 수 있습니다.

형식"Hello world"의 변환 결과용도
퍼센트 인코딩Hello%20worldURL 일반에 사용하기 쉬운 형식입니다.
application/x-www-form-urlencodedHello+worldHTML 폼의 쿼리 문자열이나 요청 본문에서 사용되는 형식입니다.