🔗 URL 인코더 및 디코더 도구
고급 옵션과 실시간 처리 기능으로 텍스트를 URL 인코딩 형식(퍼센트 인코딩)으로 또는 그 반대로 변환합니다.
URL 인코딩 도구
안전한 URL 전송을 위해 특수 문자를 인코딩하거나 URL 인코딩된 문자열을 읽을 수 있는 텍스트로 디코딩합니다.
🎯 URL 인코딩이란?
URL 인코딩(퍼센트 인코딩이라고도 함)은 URI(Uniform Resource Identifier)에서 정보를 인코딩하는 메커니즘입니다. 안전하지 않은 ASCII 문자를 "%"와 두 개의 16진수 숫자로 대체하여 문자를 인터넷을 통해 전송할 수 있는 형식으로 변환합니다.
URL은 ASCII 문자 집합의 제한된 문자만 포함할 수 있기 때문에 이 인코딩 방법은 필수적입니다. 이 집합을 벗어나는 문자나 URL에서 특별한 의미를 갖는 문자는 적절한 전송과 해석을 보장하기 위해 인코딩해야 합니다.
🔧 일반적인 사용 사례
📊 일반적인 URL 인코딩 문자 참조
| 문자 | 설명 | URL 인코딩 |
|---|---|---|
| (space) | 공백 | %20 or + |
| ! | 느낌표 | %21 |
| " | 큰따옴표 | %22 |
| # | 해시 | %23 |
| $ | 달러 기호 | %24 |
| % | 퍼센트 | %25 |
| & | 앰퍼샌드 | %26 |
| ' | 작은따옴표 | %27 |
| + | 더하기 기호 | %2B |
| , | 쉼표 | %2C |
| / | 슬래시 | %2F |
| : | 콜론 | %3A |
| ; | 세미콜론 | %3B |
| = | 등호 | %3D |
| ? | 물음표 | %3F |
| @ | 골뱅이 | %40 |
❓ Frequently Asked Questions
URL 인코딩은 문자를 인터넷을 통해 안전하게 전송할 수 있는 형식으로 변환합니다. URL은 ASCII 문자 집합을 사용해서만 보낼 수 있으므로 이 집합 밖의 문자는 인코딩해야 합니다. 또한 특정 ASCII 문자(?, &, = 등)는 URL에서 특별한 의미를 가지므로 구문이 아닌 데이터로 사용할 때는 인코딩해야 합니다. URL 인코딩은 이러한 문자를 %와 문자의 ASCII 코드를 나타내는 두 개의 16진수 숫자로 대체합니다.
%20과 + 모두 URL에서 공백을 나타낼 수 있지만 다른 맥락에서 사용됩니다. + 기호는 쿼리 문자열 및 양식 데이터(application/x-www-form-urlencoded)에서 사용되는 반면, %20은 URL의 다른 모든 부분에서 사용되는 표준 퍼센트 인코딩입니다. 최신 응용 프로그램은 일관성을 위해 일반적으로 %20을 사용합니다. URL의 경로 구성 요소에서는 %20만 유효하지만 쿼리 문자열에서는 둘 다 허용되지만 %20이 더 보편적입니다.
인코딩해야 하는 문자에는 다음이 포함됩니다: 1) 특별한 의미를 가진 예약 문자(: / ? # [ ] @ ! $ & ' ( ) * + , ; =), 2) 공백, 따옴표, <, >, #, %, {, }, |, \, ^, ~, [, ], `와 같은 안전하지 않은 문자, 및 3) 비 ASCII 문자(악센트 부호가 있는 문자, 한자, 이모티콘 등). 영숫자 문자(A-Z, a-z, 0-9) 및 예약되지 않은 문자(- _ . ~)는 일반적으로 인코딩할 필요가 없습니다.
encodeURI()는 전체 URI를 인코딩하도록 설계되었으며 URI에서 특별한 의미를 갖는 문자(:, /, ?, & 등)는 인코딩하지 않습니다. 전체 URL을 구조를 유지하면서 인코딩하려 할 때 사용됩니다. encodeURIComponent()는 예약되지 않은 문자(A-Z, a-z, 0-9, -, _, ., ~)를 제외한 모든 것을 인코딩하며 쿼리 매개변수와 같은 개별 URI 구성 요소를 인코딩하는 데 사용됩니다. 사용자 입력을 인코딩하거나 URL에 데이터를 넣는 대부분의 경우 encodeURIComponent()가 더 안전한 선택입니다.
URL 인코딩은 유니코드 문자를 먼저 UTF-8로 인코딩한 다음 각 바이트를 퍼센트 인코딩하여 처리합니다. 예를 들어, 한자 "中"(U+4E2D)는 UTF-8에서 3바이트(E4 B8 AD)로 인코딩되며, URL 인코딩에서는 %E4%B8%AD가 됩니다. 이를 통해 모든 언어의 모든 문자를 URL에서 안전하게 전송할 수 있습니다.