UriMatcherResponse : Bereichsbezogen

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 4 Minuten Lesedauer
  • Stellt Methoden bereit, um Informationen darüber zurückzugeben, ob ein URI die angegebenen Kriterien für Schema, Host, Pfad, Fragmente und Vorhandensein von Abfrageparametern erfüllt.

    Verwenden Sie diese API mit der UriMatcher -API. Diese API hat keinen Konstruktor. Verwenden Sie stattdessen die Methode UriMatcher - Übereinstimmung (), um ein UriMatcherResponse- Objekt zu instanziieren.

    Die UriMatcherResponse -API erfordert das Plugin „REST API Provider“ (com.glide.rest), das standardmäßig aktiviert ist.

    Diese API wird im Namespace sn_ws bereitgestellt.

    UriMatcherResponse - getErrorMessages()

    Gibt Nachrichten zu allen Fehlern zurück, die beim Testen des URI anhand der angegebenen Kriterien aufgetreten sind.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 2. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Beschreibung des aufgetretenen Fehlers. Wenn kein Fehler aufgetreten ist, wird eine leere Zeichenfolge zurückgegeben.

    In diesem Beispiel wird ein Fehler zurückgegeben, da in den Übereinstimmungskriterien kein Host angegeben wurde.

    var uri = "https://example.com";
    var scheme = "https";    
    var matcher = new sn_ws.UriMatcher();  
    var resp = matcher.match(uri, scheme);  
    
    gs.info("Error occurred: " + resp.isError());  
    gs.info("Error message: " + resp.getErrorMessages());

    Ausgabe:

    Error occurred: true
    Error message: Hosts rule is null or empty.

    UriMatcherResponse – isError()

    Überprüft, ob beim Testen des URI anhand der angegebenen Kriterien ein Fehler aufgetreten ist.

    Tabelle : 3. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 4. Ergebnisse
    Typ Beschreibung
    Boolean

    Kennzeichnung, die angibt, ob ein Fehler aufgetreten ist.

    Gültige Werte:
    • true: Ein Fehler ist aufgetreten.
    • „falsch“: Es sind keine Fehler aufgetreten.

    In diesem Beispiel wird ein Fehler zurückgegeben, da der URI Abfrageparameter enthält. Der Fehler tritt auf, da das an übereinstimmende () übergebene Argument für disallowQueryParameterswahrist.

    var uri = "https://example.com/path1/more?q=query";
    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("Error occurred: " + resp.isError());  
    gs.info("Error message: " + resp.getErrorMessages());

    Ausgabe:

    Error occurred: true
    Error message: Query parameters are not allowed for matching.

    UriMatcherResponse - isFragmentMatches()

    Überprüft, ob der URI die Kriterien für Fragmente erfüllt.

    Tabelle : 5. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 6. Ergebnisse
    Typ Beschreibung
    Boolean

    Kennzeichnung, die angibt, ob der URI den Kriterien für Fragmente entspricht.

    Gültige Werte:
    • wahr: Der URI entspricht den Kriterien für Fragmente.
    • „falsch“: Der URI entspricht nicht den Kriterien für Fragmente.

    Dieses Beispiel zeigt, dass der URI die Kriterien nicht erfüllt, da er ein Fragment enthält, das nicht in der Liste der zulässigen Fragmente enthalten ist.

    var uri = "https://example.com/path1/more#section3";
    var scheme = "https";  
    var allowedHosts = ["example.com", "sample.com"];  
    var allowedPaths = ["/path1/more", "/path2/less"];  
    var allowedFragments = ["section1", "section2"];  
    var matcher = new sn_ws.UriMatcher();  
    var resp = matcher.match(uri, scheme, allowedHosts, allowedPaths, allowedFragments);  
    
    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());

    Ausgabe:

    Is URI a match: false
    Is scheme a match: true
    Is host a match: true
    Is path a match: true
    Is fragment a match: false
    Error occurred: false

    UriMatcherResponse – isHostMatches()

    Überprüft, ob der URI den Kriterien für den Host entspricht

    Tabelle : 7. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 8. Ergebnisse
    Typ Beschreibung
    Boolean

    Kennzeichnung, die angibt, ob der URI den Kriterien für den Host entspricht.

    Gültige Werte:
    • wahr: Der URI entspricht den Kriterien für den Host.
    • „falsch“: Der URI entspricht nicht den Kriterien für den Host.

    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());
    gs.info("Is host a match: " + resp.isHostMatches());

    Ausgabe:

    Is URI a match: true
    Is host a match: true

    UriMatcherResponse – isMatch()

    Überprüft, ob der URI alle angegebenen Kriterien erfüllt.

    Tabelle : 9. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 10. Ergebnisse
    Typ Beschreibung
    Boolean

    Kennzeichnung, die angibt, ob der URI alle angegebenen Kriterien erfüllt.

    Gültige Werte:
    • true: Der URI erfüllt alle Kriterien.
    • „falsch“: Der URI erfüllt nicht alle Kriterien.

    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

    UriMatcherResponse – isPathMatches()

    Überprüft, ob der URI den Kriterien für den Pfad entspricht.

    Tabelle : 11. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 12. Ergebnisse
    Typ Beschreibung
    Boolean

    Kennzeichnung, die angibt, ob der URI den Kriterien für den Pfad entspricht.

    Gültige Werte:
    • wahr: Der URI entspricht den Kriterien für den Pfad.
    • „falsch“: Der URI entspricht nicht den Kriterien für den Pfad.

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

    var uri = "https://example.com/path1/more";
    var scheme = "https";  
    var allowedHosts = ["example.com", "sample.com"];  
    var allowedPaths = ["/path1/more", "/path2/less"];  
    var matcher = new sn_ws.UriMatcher();  
    var resp = matcher.match(uri, scheme, allowedHosts, allowedPaths);  
    
    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());

    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

    UriMatcherResponse – isSchemeMatches()

    Überprüft, ob der URI den Kriterien für das Schema entspricht.

    Tabelle : 13. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 14. Ergebnisse
    Typ Beschreibung
    Boolean

    Kennzeichnung, die angibt, ob der URI die Kriterien für das Schema erfüllt.

    Gültige Werte:
    • „wahr“: Der URI entspricht den Kriterien für das Schema.
    • „falsch“: Der URI entspricht nicht den Kriterien für das Schema.

    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());
    gs.info("Is scheme a match: " + resp.isSchemeMatches());

    Ausgabe:

    Is URI a match: true
    Is scheme a match: true