nicetool.dev logo

URL 인코딩

URL에서 안전하게 사용하기 위해 문자열을 변환합니다.

입력 문자열
결과

URL 인코딩이란?

URL 인코딩은 URI에서 데이터를 안전하게 표현하기 위한 방식입니다.

왜 URL을 인코딩해야 하나요?

URL은 ASCII 문자만 허용하므로 특수 문자는 변환이 필요합니다.

  • / 경로 구분자로 사용됩니다.
  • ? 경로와 쿼리 문자열을 구분합니다.
  • # URL 프래그먼트를 정의합니다.
  • & 쿼리 매개변수를 구분합니다.
  • 공백은 '+' 또는 '%20'으로 인코딩됩니다.

작동 방식

특수 문자를 '%'와 16진수 값으로 치환합니다.

'hello world' → 'hello%20world'

URL 인코더 / 디코더 사용 방법

  1. 1

    텍스트를 URL에 안전한 형태로 만들려면 Encode, %20 같은 퍼센트 인코딩을 읽을 수 있는 문자로 되돌리려면 Decode를 고르세요.

  2. 2

    URL 전체, 쿼리 값, 또는 아무 텍스트나 입력란에 붙여넣으세요.

  3. 3

    결과가 바로 나타납니다. 공백은 %20, 한글 같은 비 ASCII 문자는 UTF-8 바이트(예: "가"는 %EA%B0%80), &와 = 같은 예약 문자는 이스케이프됩니다.

  4. 4

    결과를 복사해 링크, API 요청, 리다이렉트, 분석 파라미터에 사용하세요. 모드를 바꾸면 반대 방향도 확인할 수 있습니다.

활용 예시

쿼리 값

"coffee & tea"를 검색하려면 q=coffee%20%26%20tea로 보내야 합니다. 그렇지 않으면 &에서 새 파라미터가 시작되어 서버는 "coffee "만 받습니다.

추적 링크 읽기

광고나 리다이렉트 URL에는 인코딩된 다른 URL이 들어 있는 경우가 많습니다. 디코딩하면 클릭하기 전에 실제 목적지를 알 수 있습니다.

한글 URL

한글 경로는 브라우저 내부에서 퍼센트 인코딩됩니다. https://example.com/%EA%B0%80 를 디코딩하면 "/가"처럼 읽을 수 있는 경로가 됩니다.

OAuth와 리다이렉트 URI

redirect_uri 파라미터는 완전히 인코딩해야 합니다. 여기서 인코딩하면 ?나 / 때문에 생기는 "redirect_uri mismatch" 오류를 막을 수 있습니다.

자주 묻는 질문

URL 인코딩이란?+

퍼센트 인코딩(RFC 3986)이라고도 하며, URL에서 허용되지 않거나 특별한 의미가 있는 문자를 바이트마다 %와 16진수 두 자리로 바꾸는 방식입니다.

공백은 %20인가요, +인가요?+

%20은 URL 어디서나 유효합니다. +는 폼 데이터(application/x-www-form-urlencoded) 쿼리에서만 공백을 뜻하므로 %20이 더 안전합니다.

encodeURI와 encodeURIComponent의 차이는?+

encodeURI는 / ? & = 처럼 URL 구조를 이루는 문자를 그대로 두므로 URL 전체용입니다. encodeURIComponent는 이것까지 이스케이프하므로 파라미터 값 하나에 씁니다.

디코딩이 실패하는 이유는?+

% 뒤에 올바른 16진수 두 자리가 없거나 UTF-8로 유효하지 않은 바이트가 있기 때문입니다. 문자열이 잘렸거나 두 번 인코딩되지 않았는지 확인하세요.