NB Developer Tools · 무료 도구 · URL 인코딩·디코딩

URL 인코딩·디코딩

한글이나 공백이 든 검색어를 URL 에 그대로 넣으면 깨집니다. 어디를 인코딩해야 하는지가 헷갈리는 지점인데, 이 도구는 **쿼리 값만** 과 **전체 URL** 을 나눠 처리합니다.

URL 인코딩·디코딩 바로 열기

이렇게 씁니다

  1. 텍스트나 URL 을 넣습니다.
  2. 방향(인코딩·디코딩)과 범위(쿼리 값만·전체 URL)를 고릅니다.
  3. 실행하기를 누르면 변환 결과가 나옵니다.

⚠️ 범위를 잘못 고르면 URL 이 깨진다

[쿼리 값만 — encodeURIComponent]
  `/` `?` `&` `=` 까지 **전부** 바꾼다
  → 값 하나를 감쌀 때 쓴다.  q=무료 도구  →  q=%EB%AC%B4%EB%A3%8C%20%EB%8F%84%EA%B5%AC

[전체 URL — encodeURI]
  `/` `?` `&` `=` `#` 는 **그대로 둔다**(URL 구조 문자라서)
  → 이미 완성된 URL 전체를 한 번 정리할 때 쓴다

잘못 고르면 이렇게 된다
  전체 URL 에 encodeURIComponent → https%3A%2F%2F… 로 주소가 통째로 문자열이 된다
  쿼리 값에 encodeURI          → 값 안의 & 가 살아남아 파라미터가 쪼개진다

판단 기준은 간단하다 — **값 하나를 넣는가(쿼리 값만), URL 전체를 다듬는가(전체 URL)**. 값 안에 `&` 나 `=` 가 들어갈 수 있으면 반드시 '쿼리 값만' 이어야 한다.

결과 읽는 법

  • 공백은 `%20` 이 됩니다. 옛 폼 방식에서는 `+` 로도 쓰는데, 이 도구는 디코딩 시 `+` 도 공백으로 되돌립니다.
  • 한글 한 글자는 UTF-8 3바이트라 `%XX` 가 3개 붙습니다. 길이가 늘어나는 것은 정상입니다.
  • 이미 인코딩된 문자열을 또 인코딩하면 `%` 가 `%25` 로 바뀌어 이중 인코딩이 됩니다. 결과에 `%25` 가 보이면 그 경우입니다.

주의할 점

  • 개인정보를 URL 쿼리에 담지 마세요. 서버 로그·리퍼러·브라우저 기록에 그대로 남습니다.
  • 이중 인코딩은 흔한 버그입니다. 원본 상태를 확인하고 한 번만 인코딩하세요.

자주 묻는 질문

encodeURI 와 encodeURIComponent 차이가 뭔가요?

encodeURIComponent 는 `/ ? & =` 까지 전부 바꿉니다(값 하나를 감쌀 때). encodeURI 는 그 구조 문자를 그대로 둡니다(URL 전체를 다듬을 때).

한글 검색어를 URL 에 넣으려면요?

값 부분만 '쿼리 값만(encodeURIComponent)' 으로 인코딩해 넣으세요.

결과에 %25 가 많이 보입니다.

이미 인코딩된 문자열을 한 번 더 인코딩한 이중 인코딩입니다. 원본으로 되돌린 뒤 한 번만 인코딩하세요.

URL 인코딩·디코딩 열기 — 무료 · 설치 없음

NB Developer Tools의 다른 도구

NB 무료 도구 모음

설치·가입 없이 브라우저에서 바로 쓰는 무료 도구들입니다.