🔗 URL 인코더/디코더
URL을 인코딩하거나 디코딩합니다
URL 인코딩/디코딩이란?
왜 필요한가요?
URL(Uniform Resource Locator)은 영문자, 숫자, 일부 특수문자만 사용할 수 있습니다. 한글, 공백, 특수문자 등을 URL에 포함하려면 퍼센트 인코딩(Percent Encoding)을 사용해야 합니다.
URL 인코딩은 안전하지 않은 문자를 %XX 형식의 16진수로 변환합니다. 예를 들어, 공백은 %20으로, 한글 '안녕'은 %EC%95%88%EB%85%95으로 인코딩됩니다.
언제 사용하나요?
- 쿼리 파라미터: GET 요청의 파라미터 값에 특수문자나 한글이 포함될 때
- 검색 URL: 검색어에 공백, 특수문자, 한글이 포함된 URL 생성 시
- 파일명: 한글 파일명을 URL에 포함할 때
- 디버깅: 인코딩된 URL을 읽기 쉽게 디코딩하여 확인
- API 테스트: Postman, curl 등에서 URL 파라미터 테스트 시
실무 사용 예시
예시 1: 검색 쿼리 인코딩
원본:
https://example.com/search?q=자바스크립트 배열 메서드인코딩 후:
https://example.com/search?q=%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%20%EB%B0%B0%EC%97%B4%20%EB%A9%94%EC%84%9C%EB%93%9C예시 2: 특수문자 인코딩
원본: key=value&special=a+b=c
인코딩: key=value&special=a%2Bb%3Dc
주의사항
- 이중 인코딩: 이미 인코딩된 URL을 다시 인코딩하지 않도록 주의하세요.
- 전체 URL vs 파라미터: 전체 URL을 인코딩하면 http://가 깨집니다. 파라미터 값만 인코딩하세요.
- + vs %20: 공백은 +로도 표현되지만, %20이 더 표준적입니다. URL 경로에서는 %20만 사용해야 합니다.
- 예약 문자: : / ? # [ ] @ 등은 URL 구조에 사용되므로 컨텍스트에 따라 인코딩 여부를 결정하세요.
- UTF-8 인코딩: 한글 등 유니코드는 UTF-8로 인코딩한 후 퍼센트 인코딩됩니다.
인코딩이 필요한 문자
| 문자 | 인코딩 | 설명 |
|---|---|---|
| 공백 | %20 | 가장 흔하게 인코딩되는 문자 |
| ! | %21 | 느낌표 |
| # | %23 | 해시 (앵커 구분자) |
| $ | %24 | 달러 기호 |
| & | %26 | 앰퍼샌드 (파라미터 구분자) |
| + | %2B | 플러스 (공백으로 해석될 수 있음) |
| = | %3D | 등호 (키-값 구분자) |
| ? | %3F | 물음표 (쿼리 시작) |