URL 인코더 / 디코더

URL 인코더/디코더는 텍스트를 퍼센트 인코딩된 URL로 실시간 변환합니다. 색상 코딩된 URL 구조 분석 다이어그램, encodeURI vs encodeURIComponent 실시간 비교, 다중 레이어 인코딩 감지, 편집 가능한 쿼리 파라미터 테이블, 문자별 차이 하이라이팅, 6개 언어 코드 스니펫을 제공합니다. 100% 클라이언트 사이드 — 데이터가 브라우저를 떠나지 않습니다.

0
0

제안이 있으신가요?

새로운 도구를 요청하거나 개선 사항을 제안해 주세요 — Slack 커뮤니티에 참여하세요!

Slack에서 피드백 남기기

URL 인코딩(퍼센트 인코딩)이란?

URL 인코딩은 RFC 3986에서 정의한 퍼센트 인코딩으로, URL에서 허용되지 않거나 특별한 의미를 가진 문자를 퍼센트 기호와 16진수 숫자로 안전하게 표현합니다. 예를 들어 공백은 %20, 앰퍼샌드는 %26이 됩니다. JavaScript는 두 가지 내장 함수를 제공합니다: encodeURI()는 : / ? # 같은 구조적 문자를 보존하면서 전체 URL을 인코딩하고, encodeURIComponent()는 모든 특수 문자를 인코딩하여 개별 값을 인코딩합니다. 이 도구는 서버 통신 없이 브라우저에서 모든 인코딩과 디코딩을 수행합니다.

URL 인코더 / 디코더 사용법

  1. 텍스트 탭에서 텍스트를 입력하면 문자별 차이 하이라이팅과 함께 실시간으로 인코딩됩니다
  2. 인코딩 모드를 선택하세요: encodeURIComponent(값용), encodeURI(전체 URL용), 또는 원시 RFC 3986
  3. URL 파서 탭에서 URL을 붙여넣으면 색상 코딩된 구조(스킴, 호스트, 경로, 쿼리, 프래그먼트)를 확인할 수 있습니다
  4. 인터랙티브 테이블에서 쿼리 파라미터를 편집하고 재구성된 URL을 복사하세요
  5. 비교 탭에서 encodeURI와 encodeURIComponent 사이의 정확한 차이를 확인하세요

자주 묻는 질문

encodeURI와 encodeURIComponent의 차이점은?

encodeURI()는 전체 URL 인코딩용으로 :, /, ?, #, @ 같은 URL 구조 문자를 보존합니다. encodeURIComponent()는 모든 특수 문자를 인코딩하며 개별 값(쿼리 파라미터 등)을 인코딩할 때 사용합니다. 예를 들어, encodeURI('https://example.com/path?q=hello world')는 URL 구조를 보존하고, encodeURIComponent('hello world')는 'hello%20world'를 반환합니다.

URL에서 공백 대신 %20이 나타나는 이유는?

URL에는 리터럴 공백을 포함할 수 없습니다. RFC 3986에 따라 공백은 %20으로 퍼센트 인코딩되어야 합니다(폼 데이터에서는 +로 표현되기도 합니다). 브라우저 주소창에 URL을 붙여넣으면 자동으로 공백이 인코딩됩니다. 이 도구를 사용하면 어떤 문자가 인코딩되는지 정확히 확인하고 읽기 쉬운 텍스트로 디코딩할 수 있습니다.

이중 인코딩이란 무엇이며 어떻게 감지하나요?

이중 인코딩은 이미 인코딩된 텍스트가 다시 인코딩될 때 발생합니다. 예를 들어 %20(공백)이 %2520이 되는데, %가 %25로 인코딩되기 때문입니다. 이 도구의 인코딩 깊이 감지기는 다중 레이어 인코딩을 자동으로 식별하고 각 디코딩 레이어를 보여주어 문제를 쉽게 진단하고 수정할 수 있습니다.

URL에서 인코딩 없이 안전한 문자는?

RFC 3986은 인코딩이 필요 없는 비예약 문자를 정의합니다: A-Z, a-z, 0-9, 하이픈(-), 마침표(.), 밑줄(_), 틸드(~). : / ? # [ ] @ ! $ & ' ( ) * + , ; = 같은 예약 문자는 URL 구조에서 특별한 의미를 가지며 데이터 값으로 사용할 때만 인코딩해야 합니다.

이 도구를 사용하면 데이터가 안전한가요?

네. 이 URL 인코더/디코더는 JavaScript의 내장 encodeURIComponent()와 decodeURIComponent() 함수를 사용하여 100% 브라우저에서 실행됩니다. 텍스트나 URL이 서버로 전송되지 않으며 모든 처리가 사용자의 기기에서 로컬로 수행됩니다.

관련 도구