URL 인코더/디코더
URL과 한글 주소를 퍼센트 인코딩하거나 원래 문자로 되돌리세요.
파라미터 값: ?q= 뒤의 값처럼 일부만 변환할 때 (:, /, ? 도 변환) · 전체 URL: 주소 전체를 변환할 때 (:, /, ? 유지)
결과
URL과 한글 주소를 퍼센트 인코딩하거나 원래 문자로 되돌리세요.
파라미터 값: ?q= 뒤의 값처럼 일부만 변환할 때 (:, /, ? 도 변환) · 전체 URL: 주소 전체를 변환할 때 (:, /, ? 유지)
결과
모든 URL은 제한된 ASCII 문자만 이해하는 시스템들을 거쳐 전달됩니다. 퍼센트 인코딩(RFC 3986)이 그 다리 역할을 합니다. 안전 문자 집합 밖의 모든 바이트는 % 뒤에 16진수 값을 붙인 형태로 변환되죠. 한글, 공백, 특수문자가 웹을 통과하는 방식이 바로 이것입니다.
encodeURIComponent는 :, /, ?, #까지 전부 이스케이프하므로 파라미터 값 하나에 적합합니다. encodeURI는 이런 구조 문자를 보존해 주소 전체의 형태를 유지합니다. 둘을 바꿔 쓰면 이중 인코딩된 파라미터나 깨진 경로 같은 고전적인 버그가 발생합니다.
이중 인코딩(%20이 %2520이 되는 것)은 이미 인코딩된 문자열을 다시 인코딩할 때 생깁니다. 디코딩 오류는 대개 % 뒤에 16진수 두 자리가 오지 않는 경우입니다. 확실하지 않다면 텍스트가 더 이상 바뀌지 않을 때까지 반복해서 디코딩해보세요.
변환은 브라우저 내장 함수로만 수행되며 입력값은 어떤 서버로도 전송되지 않습니다. 토큰이나 세션 값이 포함된 URL도 안심하고 변환하세요.