2016-05-18 9 views
0

Ich kämpfe ein bisschen mit benannten Parametern. Unter der Annahme, die folgenden:Expressjs Routen mit benannten Parametern

app.get('/names/:name', function (request, response) { 
    … 
}); 

ist ein legitimer Weg, wird Antwort auf Anfragen wie /names/buddy123

Ein weiterer legitimer Weg ist:

app.get('/names/age', function (request, response) { 
    … 
}); 

Die Reaktion auf Anfragen werden und wahrscheinlich ein zurückkehren Liste aller verfügbaren Altersgruppen.

Jede Route ist gut definiert, wenn sie alleine definiert ist, aber sobald beide existieren, wird age als Name betrachtet und Anforderungen werden nicht wie erwartet weitergeleitet.

Gibt es eine Möglichkeit, dies zu überwinden?

Antwort

1

Versuchen Sie age Route vor dem Namen einer definieren:

app.get('/names/age', function (request, response) { 
    … 
}); 

app.get('/names/:name', function (request, response) { 
    … 
}); 
+0

Dies funktioniert nicht. Das Verhalten bleibt gleich – buddy123

+0

@ buddy123 arbeitet für mich mit Express 4.13.4 – madox2

+0

Ich lief 4.13.4 und es funktioniert nicht für mich. Noch mehr Möglichkeiten, es zu testen? – buddy123

Verwandte Themen