URL Muster in Funken

8

Ich versuche einen Filter zu erstellen, der den folgenden URLs entspricht:

/foo und /foo/*

Also alles unter /foo/ und auch der Basisfall /foo

Ich habe diesen Filter:

%Vor%

Aber das wird natürlich nicht ausgeführt, wenn ich in /foo

eingebe

Ich habe versucht mit dem folgenden, aber ohne Glück:

/foo* %Code% /foo.*

Gibt es das überhaupt, um das zu erreichen? Oder vielleicht eine URL-Liste zu verwenden? damit ich beide URLs demselben Filter zuordnen kann.

Und bitte sagen Sie nicht, die Funktion in einer Variablen zu speichern, so dass ich sie zweimal benutze, weil ich denke, dass das überhaupt nicht sauber ist.

    
Pablo Matias Gomez 29.01.2015, 15:13
quelle

1 Antwort

7

Nach Ссылка (wo der Pfadabgleich findet statt), es sieht nicht danach aus, was Sie tun möchten.

Der RouteEntry-Code teilt das angegebene Muster und die angegebene URL in das Zeichen '/' ein und sucht dann nach Übereinstimmungen (Gleichheit oder Platzhalter) für jede der Komponenten.

Hier ist eine detailliertere Erklärung:

Die URL /foo/blah hat 2 Teile (in der Terminologie von RouteEntry-Code mit oben verknüpft), während /foo 1 Teil hat. Damit ein Muster mit dem ersten übereinstimmt, muss es zwei Teile haben: /foo/* ist der einzige Sinn. Aber dieses Muster hat 2 Teile, was /foo zum Scheitern bringt, wenn die beiden Zeilen 49 und 78 geprüft werden. Der einzige Spezialfall ist der Hack in Zeile 71, der das Muster /foo/* mit der URL /foo/ übereinstimmen, aber nicht /foo .

    
Manish 11.02.2015, 02:53
quelle

Tags und Links