URL 쿼리 파서

URL을 붙여 넣으면 구조와 모든 매개변수를 한 번에 디코딩해 보여 줍니다. 중복도 포함하며 버튼도, 업로드도 없습니다.

사용 방법

  1. URL, 쿼리 문자열만 있는 입력(`?a=1` 또는 `a=1&b=2`), 해시 라우트 링크(`#?a=1`)를 붙여 넣으세요. 입력하는 즉시 결과가 나오며 버튼은 없습니다.
  2. 왼쪽 패널은 입력 유형, 스킴, 사용자 정보, 호스트, 포트, 경로, 프래그먼트와 각 경로 세그먼트를 따로 디코딩해 보여 줍니다.
  3. 오른쪽 패널은 모든 쿼리 매개변수를 원래 순서대로 나열합니다. 중복 키는 표시만 하고 제거하거나 정렬하지 않으며 각 행에 복사 버튼이 있습니다.
  4. 매개변수나 JSON을 복사하거나 JSON을 내려받으세요. 디코딩에 실패한 항목은 원문을 유지한 채 “디코딩 안 됨”으로 표시되고, 안내가 정확한 매개변수와 문자를 짚어 줍니다.

예시

입력

https://user:pass@example.com:8443/shop/search?q=hello+world&tag=news&tag=tech&empty=#results

결과

유형: 절대 URL
사용자 정보: user:pass
호스트: example.com · 포트: 8443
경로: /shop/search → shop · search
매개변수: q = hello world · tag = news · tag = tech(중복) · empty = (비어 있음)
프래그먼트: results

쿼리 문자열은 “+”를 공백으로 읽으므로 공백이 됩니다. 옵션을 끄면 더하기 기호 그대로 유지됩니다. “tag” 두 행은 모두 남습니다. 중복 키는 유효하며 여러 값을 뜻하는 경우가 많습니다. “empty=”는 버리지 않고 빈 값으로 유지합니다.

규칙, 제한 및 알려진 문제

  • 이 도구는 검증기가 아니라 뷰어입니다. 스킴이 없는 도메인은 조용히 고치지 않고 상대 경로로 파싱한 뒤 알려 줍니다.
  • 아무것도 정규화하지 않습니다. 대소문자, 기본 포트, IDN, “..”, 매개변수 순서를 작성된 그대로 둡니다. 호스트는 입력한 그대로 표시하며 도메인과 접미사를 나누지 않습니다.
  • 디코딩은 한 번만, UTF-8만 지원합니다. “%2520”은 “%20”으로 남고 GBK 등 다른 문자 집합으로 인코딩된 값은 추측하지 않고 실패로 알립니다.
  • 잘못된 “%” 이스케이프나 UTF-8 오류는 매개변수, 필드, 문자 위치와 함께 알립니다. 원문은 유지하고 “디코딩 안 됨”으로 표시하며 “�”로 바꾸지 않습니다.
  • 중복 키는 순서대로 유지하고 표시합니다. “a[b]=c” 같은 중첩 키는 평면으로 두며 매개변수를 정렬하지 않습니다.
  • 최대 5만 자이며 매개변수는 300개까지 렌더링합니다(복사와 JSON에는 전부 포함). 1만 자를 넘으면 입력을 멈춘 뒤 약 0.6초 후 결과가 나옵니다.
  • 업로드, 기록, 입력을 담은 공유 링크가 없습니다. 모든 처리는 브라우저에서 이루어지며 URL은 페이지를 떠나지 않습니다.

URL을 이해한 뒤 보통 필요한 도구입니다.