Tips 2026-04-05
URL 인코딩 실수와 해결법: 모든 개발자가 피해야 할 함정
웹 애플리케이션에서 버그를 유발하는 URL 인코딩 실수를 발견하고 올바른 처리 방법을 배우세요.
URL 인코딩(퍼센트 인코딩)은 간단해 보이지만 가장 흔한 버그 원인 중 하나입니다.
encodeURI vs encodeURIComponent
가장 흔한 실수는 잘못된 인코딩 함수를 사용하는 것입니다:
// encodeURI — 전체 URI 인코딩, :, /, ?, &, = 보존
encodeURI(url);
// encodeURIComponent — URI 컴포넌트 인코딩
encodeURIComponent(value);
경험 법칙: 쿼리 파라미터 값에는 encodeURIComponent를 사용하세요.
이중 인코딩 함정
이미 인코딩된 문자열을 다시 인코딩하는 것은 교활한 버그입니다:
const encoded = encodeURIComponent('hello world'); // "hello%20world"
const double = encodeURIComponent(encoded); // "hello%2520world"
국제 문자
const url = new URL('https://example.com');
url.searchParams.set('q', 'test');
URL 인코더/디코더 도구로 URL을 안전하게 인코딩하고 디코딩하세요.