UriMatcher - 범위 지정됨
URI가 체계, 호스트, 경로, 조각 및 쿼리 매개변수의 존재 여부에 대해 지정된 기준과 일치하는지 확인하는 메서드를 제공합니다.
UriMatcher API에는 기본적으로 활성화되는 REST API Provider(com.glide.rest) 플러그인이 필요합니다.
이 API는 sn_ws 네임스페이스 내에서 제공됩니다.
UriMatcher - UriMatcher()
새 UriMatcher 개체를 인스턴스화합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
UriMatcher 개체를 인스턴스화합니다.
var matcher = new sn_ws.UriMatcher();
UriMatcher - match(문자열 uri, 문자열 체계, 배열 호스트, 배열 경로, 배열 조각, 부울 disallowQueryParameters)
URI가 체계, 호스트, 경로, 조각 및 쿼리 매개변수의 존재 여부에 대해 지정된 기준과 일치하는지 확인합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| uri | 문자열 | 지정된 기준에 대해 테스트할 URI입니다. |
| 체계 | 문자열 | URI에 사용되는 프로토콜입니다. 유효한 값은 다음과 같습니다.
|
| 호스트 | 배열 | URI에서 허용된 호스트 목록입니다. URI는 허용된 호스트 중 하나를 사용하여 일치로 간주해야 합니다. |
| 경로 | 배열 | 옵션입니다. URI에서 허용되는 경로 목록입니다. URI는 일치하는 것으로 간주되려면 허용되는 경로 중 하나를 사용해야 하며, 허용되는 경로는 URI에 사용되는 전체 경로여야 합니다. 예를 들어 허용되는 경로가 주:
경로는 /로 시작해야 합니다.기본적으로 모든 경로가 허용됩니다. |
| 조각 | 배열 | 옵션입니다. URI에서 허용되는 조각 목록입니다. URI는 허용된 조각을 포함하지 않는 경우에도 일치하는 것으로 간주됩니다. URI는 허용 목록에 없는 조각이 포함된 경우에만 일치하지 않는 것으로 간주됩니다. 기본값: 모든 조각이 허용됩니다. |
| disallowQueryParameters | 부울 | 옵션입니다. URI에서 쿼리 매개 변수를 사용할 수 있는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: false |
| 유형 | 설명 |
|---|---|
| UriMatcherResponse | 일치에 대한 자세한 정보를 반환하기 위한 메서드가 있는 UriMatcherResponse 개체입니다. |
이 예제에서는 URI가 지정된 체계 및 호스트와 일치하는지 확인합니다.
var uri = "https://example.com/path?q=query";
var scheme = "https";
var allowedHosts = ["example.com"];
var matcher = new sn_ws.UriMatcher();
var resp = matcher.match(uri, scheme, allowedHosts);
gs.info("Is URI a match: " + resp.isMatch());
출력:
Is URI a match: true
이 예제에서는 URI가 지정된 체계, 호스트, 경로, 조각 및 쿼리 매개 변수의 존재 여부와 일치하는지 확인합니다.
var uri = "https://example.com/path1/more";
var scheme = "https";
var allowedHosts = ["example.com", "sample.com"];
var allowedPaths = ["/path1/more", "/path2/less"];
var allowedFragments = ["section1", "section2"];
var noQueryParams = true;
var matcher = new sn_ws.UriMatcher();
var resp = matcher.match(uri, scheme, allowedHosts, allowedPaths, allowedFragments, noQueryParams);
gs.info("Is URI a match: " + resp.isMatch());
gs.info("Is scheme a match: " + resp.isSchemeMatches());
gs.info("Is host a match: " + resp.isHostMatches());
gs.info("Is path a match: " + resp.isPathMatches());
gs.info("Is fragment a match: " + resp.isFragmentMatches());
gs.info("Error occurred: " + resp.isError());
gs.info("Error message: " + resp.getErrorMessages());
출력:
Is URI a match: true
Is scheme a match: true
Is host a match: true
Is path a match: true
Is fragment a match: true
Error occurred: false
Error message: