빈칸과 별표를 구분
구성 요소 모드는 8개 필드를 명시적으로 전달합니다. *는 모든 값, 빈칸은 빈 구성 요소만 허용합니다. 기본 URL은 후보 해석에만 쓰이며 구성 요소 모드에 호스트 조건을 추가하지 않습니다.
URL과 라우팅
한 줄에 URL 하나를 입력하세요. 아래에서 URLPattern 또는 경로 전용 엔진을 선택할 수 있습니다.
URL과 패턴은 현재 브라우저에서 처리하며 입력 주소로 요청을 보내지 않습니다.
후보 URL을 한 줄 이상 입력하세요.
URLPattern의 *는 모든 값, 빈 필드는 빈 구성 요소를 의미합니다. 전체가 불일치해도 구성 요소별 캡처는 표시됩니다.
기본 URL은 상대 후보와 상대 문자열 패턴을 해석하며 구성 요소 모드에 조건을 추가하지 않습니다.
한도: 패턴당 512, 후보 200행, URL과 기본 URL당 2,048, 합계 131,072 UTF-16 단위. 워커 제한 2초.
결과가 만료되었거나 계산 중입니다.
호스트가 바뀌거나 끝에 슬래시가 붙으면 같은 규칙도 다른 결과를 냅니다. URLPattern 테스트는 성공할 예와 실패할 예를 함께 두고 조건을 하나씩 바꾸어 원인을 확인할 때 유용합니다.
URL 패턴 전체의 일치와 프레임워크 경로 판정은 별개의 작업입니다. 명명된 그룹과 와일드 카드의 의미를 실제 라이브러리 결과로 확인하세요. 일치 결과가 서버의 응답이나 처리 함수 선택을 보장하지는 않습니다.
URLPattern 테스트는 전체 URL 결과와 구성 요소별 진단을 따로 보여 줍니다. 호스트가 달라도 경로의 id는 캡처될 수 있습니다. 이 값은 부분 진단이며 전체 exec 호출이 성공한 것처럼 표시하지 않습니다.
URLPattern의 hostname 조건은 다른 호스트를 제외합니다. 경로 엔진은 pathname만 읽으므로 다른 호스트에 있는 같은 경로도 일치할 수 있습니다. 두 사례를 함께 두면 어떤 범위를 검사하는지 분명해집니다.
구성 요소 모드는 8개 필드를 명시적으로 전달합니다. *는 모든 값, 빈칸은 빈 구성 요소만 허용합니다. 기본 URL은 후보 해석에만 쓰이며 구성 요소 모드에 호스트 조건을 추가하지 않습니다.
path-to-regexp v8은 Express 5 경로 문법을 사용합니다. 선택 부분에는 중괄호를 쓰고 와일드카드에는 이름을 붙입니다. 엔진 변경은 입력을 보존하며 문법을 자동 변환하지 않습니다.
자동 검사는 마지막 편집 후 350 ms에 실행됩니다. 끄면 버튼 또는 Ctrl/Cmd + Enter로 실행합니다. 편집 즉시 이전 보고서의 내보내기를 막으므로 현재 결과가 나온 뒤 구성 요소를 펼쳐 확인하세요.
URLPattern 테스트는 urlpattern-polyfill 10.1.0과 path-to-regexp 8.4.2를 호출합니다. 보고서에는 버전, 입력과 설정이 들어갑니다. 모든 브라우저에서 같은 polyfill을 사용하며 브라우저 내장 구현을 측정하는 기능은 아닙니다.
URLPattern 그룹은 구성 요소별로 보존하고 추가 디코딩을 하지 않습니다. 빠진 선택 캡처는 null로 기록합니다. 경로 엔진의 이름 있는 와일드카드는 기본적으로 배열이며 디코딩을 끄면 원래 문자열을 반환합니다.
상대 후보는 기본 URL을 사용합니다. 원문과 정규화 결과가 다르면 함께 표시하여 기본 포트 제거, 점 경로 처리, 호스트 정규화를 확인할 수 있습니다. 패턴을 바꾸지 않아도 기본 URL 변경으로 검사 대상이 달라질 수 있습니다.
유효하지 않은 주소와 디코딩 오류는 원래 행 번호로 표시하고 나머지는 계속 검사합니다. 패턴 컴파일 오류는 실행 전체를 중단합니다. 화면은 50행씩 표시하지만 JSON에는 오류를 포함한 모든 행이 들어갑니다.
기본값은 구별입니다. 대소문자 무시를 켜서 변경하세요. 호스트는 URL 파싱 단계에서 정규화되므로 /users/42와 /USERS/42처럼 경로를 바꾸어 확인하는 편이 정확합니다.
아닙니다. URLPattern은 8개 구성 요소를 검사하고 여기의 v8 어댑터는 경로만 검사합니다. v8의 선택 부분은 중괄호를 쓰고 별표에는 이름이 필요합니다. Express 앱 전체를 재현하지는 않습니다.
네. 패턴 일치에 쓰는 search는 문자열이므로 a=1&b=2와 b=2&a=1은 다릅니다. 순서를 무시하는 맵 비교는 없습니다. 쿼리를 전부 제외하려면 search를 *로 설정하세요.
URLPattern은 끝 슬래시를 자동으로 선택 처리하지 않습니다. /users/:id는 /users/42/와 다릅니다. 경로 엔진은 기본적으로 끝 구분자를 허용하며 옵션에서 끌 수 있습니다.
HTTPS의 443은 URL 정규화 후 빈 port가 됩니다. 필수 이름 그룹은 그 빈 값에서 443을 얻을 수 없습니다. 해석된 주소와 실제 포트 패턴을 확인하세요.
예상과 다른 경로 결과가 있나요?