URL에 한글을 넣으면 %EC%95%88 같은 이상한 문자로 바뀝니다. 이것이 퍼센트 인코딩(URL 인코딩)입니다. 원리와 방법을 알아봅니다.
왜 인코딩이 필요한가
URL은 ASCII 문자만 허용합니다. 한글, 공백, 특수문자는 바이트 단위로 %XX 형식으로 변환해야 합니다.
변환 예시
안 -> UTF-8로 EC 95 88 -> %EC%95%88. 공백 -> %20. 텍스트 변환기에서 URL 인코딩 기능을 사용하면 바로 변환됩니다.
프로그래밍
JavaScript: encodeURIComponent(text). Python: urllib.parse.quote(text). 대부분의 언어에서 내장 함수를 제공합니다.
디코딩
반대로 %EC%95%88을 안으로 복원하는 것이 디코딩입니다. decodeURIComponent(), urllib.parse.unquote()를 사용합니다.
프로그래밍과 텍스트 변환
프로그래밍에서 문자열 처리는 가장 기본적이면서도 중요한 영역입니다. 사용자 입력을 받아 처리하거나, 외부 API와 통신하거나, 데이터베이스에 저장할 때 항상 텍스트 변환이 필요합니다. 잘못된 처리는 보안 취약점이나 버그로 이어질 수 있습니다.
텍스트 변환기로 변환 결과를 미리 확인하면 코드 작성 시 참고할 수 있습니다. 특히 이스케이프 처리나 인코딩 변환은 규칙이 복잡해서, 도구를 사용해 검증하는 것이 좋습니다.
다양한 텍스트 형식의 이해
JSON, XML, CSV, HTML 등 텍스트 기반 데이터 형식은 각각 고유한 규칙을 가지고 있습니다. 한 형식에서 다른 형식으로 변환할 때는 이런 규칙을 정확히 이해하고 적용해야 합니다. 온라인 변환 도구는 이런 변환 작업을 정확하게 수행하는 데 도움이 됩니다.
특히 특수문자 처리는 형식마다 다릅니다. HTML에서는 앰퍼샌드를 엔티티로 변환해야 하고, JSON에서는 따옴표를 이스케이프해야 합니다. 이런 세부 규칙을 모두 외우기는 어렵기 때문에 적절한 도구를 활용하는 것이 현명합니다.