URL·Base64 인코딩 변환기
입력한 글은 브라우저 안에서만 변환되며 서버로 전송되지 않습니다.
자주 묻는 질문
- 'URL 구성요소'와 '전체 주소'는 무엇이 다른가요?
- URL 구성요소는 자바스크립트 encodeURIComponent와 같아서 영문·숫자와 - _ . ! ~ * ' ( ) 밖의 문자를 모두 %XX로 바꿉니다. 검색어처럼 주소의 한 조각에 넣을 값에 씁니다. 전체 주소는 encodeURI와 같아서 ; / ? : @ & = + $ , # 처럼 주소 구조를 이루는 문자는 그대로 둡니다.
- 한글은 왜 %EC%95%88처럼 길어지나요?
- URL과 Base64 변환은 글자를 UTF-8 바이트로 바꾼 뒤 처리합니다. 한글 한 글자는 UTF-8로 3바이트, 이모지는 대개 4바이트라서 URL 인코딩하면 한글 한 글자가 %XX 세 개가 됩니다.
- URL-safe Base64와 패딩(=)은 무엇인가요?
- Base64는 3바이트를 4글자로 바꾸므로 길이가 약 3분의 4로 늘어납니다. 표준 Base64의 + 와 / 는 주소에서 특별한 뜻이 있어, URL-safe 방식(RFC 4648의 base64url)은 이를 - 와 _ 로 바꿉니다. 끝의 = 는 길이를 4의 배수로 맞추는 패딩이며, 이 변환기는 디코딩할 때 두 방식과 패딩 생략을 모두 받아들입니다.
- Base64 디코딩에서 'UTF-8 텍스트가 아닙니다'라고 나와요.
- 이 도구는 디코딩 결과를 UTF-8 글자로 보여줍니다. 이미지나 압축 파일처럼 글자가 아닌 데이터를 Base64로 바꾼 값이면 글자로 풀 수 없어 오류를 표시합니다.
- 입력한 글이 서버로 전송되나요?
- 아니요. 모든 변환은 브라우저 안에서만 이루어지며 입력한 글은 어디에도 전송되거나 저장되지 않습니다.