URL Encoder / Decoder
Encode and decode URL strings using encodeURIComponent or encodeURI.
Component (encodeURIComponent / decodeURIComponent)
Full URI (encodeURI / decodeURI)
이 도구는 브라우저와 자바스크립트가 사용하는 방식 그대로 URL 문자열을 인코딩하고 디코딩합니다. 쿼리 값 같은 개별 조각에는 encodeURIComponent를, URL 전체에는 encodeURI를 적용합니다. 텍스트나 이미 인코딩된 문자열을 붙여넣고 모드를 고르면 결과가 바로 나옵니다.
URL에 들어가면 안 되는 문자를 처리하는 일상적인 문제를 해결합니다. 공백, 앰퍼샌드, 슬래시, 한글 같은 비ASCII 문자는 퍼센트 인코딩(%20, %26 등)을 하지 않으면 링크나 파라미터가 깨집니다. API 요청 URL을 만들거나, 쿼리스트링을 디버깅하거나, 인코딩된 링크의 실제 내용을 확인할 때 사용하세요.
사용 방법
- 입력 칸에 텍스트를 붙여넣거나 입력합니다. 인코딩할 일반 텍스트여도 되고, 디코딩할 인코딩된 문자열이어도 됩니다.
- 쿼리 파라미터 값처럼 URL의 한 조각만 처리하려면 Encode Component 또는 Decode Component를 누릅니다. encodeURIComponent / decodeURIComponent가 적용됩니다.
- URL 구조(://, /, ?, &)를 유지하면서 전체 URL을 처리하려면 Encode URI 또는 Decode URI를 누릅니다. encodeURI / decodeURI가 적용됩니다.
- 출력 칸에서 변환된 결과를 확인하고 Copy 버튼으로 클립보드에 복사합니다.
자주 묻는 질문
- Encode Component와 Encode URI는 무엇이 다른가요?
- Encode Component(encodeURIComponent)는 / ? : @ & = + # 같은 예약 문자까지 거의 모두 인코딩하므로 URL에 넣을 개별 값 하나에 적합합니다. Encode URI(encodeURI)는 이런 구조 문자를 그대로 두므로 URL 전체를 깨뜨리지 않고 인코딩할 때 사용합니다.
- 디코딩할 때 오류가 나는 이유는 무엇인가요?
- decodeURIComponent와 decodeURI는 잘못된 입력에서 URIError를 던집니다. 예를 들어 단독 % 기호나 뒤 바이트가 빠진 %E0 같은 불완전한 시퀀스가 그렇습니다. 모든 % 뒤에 올바른 16진수 두 자리가 오는지 확인하세요.
- 입력한 내용이 서버로 전송되나요?
- 아니요. 모든 인코딩·디코딩은 브라우저 내장 자바스크립트 함수로 로컬에서 처리됩니다. 서버로 아무것도 보내지 않으므로 토큰이나 비공개 파라미터가 든 URL도 안전하게 붙여넣을 수 있습니다.
- 한글이나 이모지도 처리되나요?
- 네. 한글, 일본어, 이모지 같은 문자는 UTF-8 바이트 시퀀스로 인코딩됩니다(예: 공백은 %20, 비ASCII 문자는 여러 개의 %XX 바이트). 디코딩하면 원래 텍스트로 복원됩니다.