UriMatcher – Umfang

  • Freigeben Version: Zurich
  • Aktualisiert 31. Juli 2025
  • 2 Minuten Lesedauer
  • Stellt eine Methode bereit, um zu überprüfen, ob ein URI den angegebenen Kriterien für Schema, Host, Pfad, Fragmente und Vorhandensein von Abfrageparametern entspricht.

    Die UriMatcher API erfordert das Plugin „REST API Provider“ (com.Glide.Rest), das standardmäßig aktiviert ist.

    Diese API wird in bereitgestellt sn_WS Namespace.

    UriMatcher: UriMatcher()

    Instanziiert eine neue UriMatcher Objekt.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Keine

    Instanziiert einen UriMatcher Objekt.

    var matcher = new sn_ws.UriMatcher();

    UriMatcher – Übereinstimmung(Zeichenfolge-URI, Zeichenfolgenschema, Array-Hosts, Array-Pfade, Array-Fragmente, boolescher Wert unallowQueryParameters)

    Überprüft, ob ein URI den angegebenen Kriterien für Schema, Host, Pfad, Fragmente und Vorhandensein von Abfrageparametern entspricht.

    Tabelle : 2. Parameter
    Name Typ Beschreibung
    uri Zeichenfolge URI, der anhand der angegebenen Kriterien getestet werden soll.
    Schema Zeichenfolge Im URI verwendetes Protokoll.
    Gültige Werte:
    • http
    • https
    hosts Array Liste der zulässigen Hosts im URI.

    Der URI muss einen der zulässigen Hosts verwenden, um als Übereinstimmung betrachtet zu werden.

    paths Array Optional. Liste der zulässigen Pfade im URI.

    Der URI muss einen der zulässigen Pfade verwenden, um als Übereinstimmung betrachtet zu werden, und der zulässige Pfad muss der vollständige im URI verwendete Pfad sein. Beispiel: Wenn der zulässige Pfad ist /Path1 , Ein URI mit dem Pfad /Path1/mehr Wird nicht als Übereinstimmung betrachtet.

    Hinweis:
    Pfade müssen mit beginnen / .

    Standard: Jeder Pfad ist zulässig.

    Fragmente Array Optional. Liste der zulässigen Fragmente im URI.

    Der URI wird auch dann als Übereinstimmung betrachtet, wenn er keines der zulässigen Fragmente enthält. Der URI wird nur dann als nicht übereinstimmend betrachtet, wenn er Fragmente enthält, die nicht in der zulässigen Liste enthalten sind.

    Standard: Jedes Fragment ist zulässig.

    UnzulässigerQueryParameters Boolean Optional. Kennzeichnung, die angibt, ob Abfrageparameter im URI zulässig sind.
    Gültige Werte:
    • Wahr: Abfrageparameter sind nicht zulässig. Wenn Abfrageparameter im URI enthalten sind, tritt ein Fehler auf.
    • Falsch: Abfrageparameter sind zulässig.

    Standardwert: false

    Tabelle : 3. Ergebnisse
    Typ Beschreibung
    UriMatcherResponse UriMatcherResponse Objekt mit Methoden zur Rückgabe detaillierter Informationen zur Übereinstimmung.

    In diesem Beispiel wird überprüft, ob der URI mit dem angegebenen Schema und Host übereinstimmt.

    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());

    Ausgabe:

    Is URI a match: true

    In diesem Beispiel wird überprüft, ob der URI mit dem angegebenen Schema, Host, Pfad, Fragmenten und Vorhandensein von Abfrageparametern übereinstimmt.

    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());

    Ausgabe:

    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: