Ich versuche, einen Authentifizierungsmechanismus für meine App zu erstellen, indem Sie Cookies überprüfen. Also habe ich die router.all('*')
hinzugefügt, um jede Anfrage zu erfüllen, checke das Cookie und gehe dann zum eigentlichen Handler. Aber ich brauche nur Anfragen, die ein oder mehrere Zeichen nach '/' haben. (Ich möchte /manage
, /m
oder /about
, aber nicht /
übereinstimmen).Entsprechen Sie allen Routen außer '/' in Express
//Assuming a request for '/', this gets called first
router.all('*', function (request, response, next) {
//Stuff happening
next();
});
//This gets called on next(), which I do not want
router.get('/', function (request, response) {
//Stuff happening
});
//However this I do want to be matched when requested and therefore called after router.all()
router.post('/about', function (request, response) {
//Stuff happening
});
Nach den Antworten here Sie Regex für den Pfad verwenden können passend, aber dann verstehe ich nicht wirklich, was '*'
ist. Es könnte alles zusammenpassen, aber es sieht für mich nicht nach Regex aus.
- Warum
'*'
Spiel/
? - Welches Argument brauche ich, um
all()
zu entsprechen/about
, aber nicht/
?
Manchmal ist die Lösung für Ihr Problem nicht die Antwort auf Ihre Frage, aber die Lösung für das Problem. –