> percent | url | rfc3986 <
// 퍼센트 인코딩 – 문자를 URL/URI용 %XX 형식으로 변환
[RFC3986]
표준 준수
URI 퍼센트 인코딩에 대한 RFC 3986 규격을 따릅니다.
[UNICODE]
완전한 유니코드 지원
UTF‑8로 인코딩된 유니코드 문자와 이모지를 정확하게 처리합니다.
[FLEXIBLE]
유연한 인코딩 옵션
표준 인코딩과 모든 문자를 인코딩하는 모드 중에서 선택할 수 있습니다.
>> 기술 정보
퍼센트 인코딩 동작 방식:
퍼센트 인코딩은 안전하지 않은 ASCII 문자를 퍼센트 기호(%)와 해당 문자 바이트 값을 나타내는 두 자리 16진수로 치환합니다. UTF‑8 문자는 여러 개의 %XX 시퀀스로 인코딩됩니다.
예시:
"Hello World!" → Hello%20World%21
퍼센트 인코딩 사용 시나리오:
- >URL 및 URI 인코딩
- >폼 데이터 전송
- >쿼리 스트링 파라미터
- >URL 경로 구성 요소
- >HTTP 헤더와 쿠키
>> 자주 묻는 질문
퍼센트 인코딩이란 무엇인가요?
퍼센트 인코딩(URL 인코딩)은 안전하지 않은 ASCII 문자를 "%"와 두 자리 16진수로 대체하여 URI 내 정보를 인코딩하는 방식입니다.
언제 퍼센트 인코딩을 사용해야 하나요?
URL, 쿼리 파라미터, 폼 데이터 등에서 특수 문자를 포함해야 하고, 해당 문자가 특별한 의미를 가지므로 이스케이프해야 할 때 퍼센트 인코딩을 사용합니다.
encodeURI 와 encodeURIComponent 의 차이는 무엇인가요?
encodeURI 는 :/?#[]@ 같은 문자를 유지한 채 전체 URI 를 인코딩합니다. encodeURIComponent 는 예약되지 않은 문자 (A‑Z, a‑z, 0‑9, -, _, ., ~) 를 제외한 모든 문자를 인코딩합니다.
왜 공백이 %20 또는 + 로 변하나요?
URL에서는 공백이 보통 %20 으로 인코딩됩니다. 폼 데이터(application/x-www-form-urlencoded)에서는 역사적인 이유로 + 로 표시되기도 합니다. 두 방식 모두 유효하지만 사용하는 맥락이 다릅니다.