2016-07-28 7 views
0

Ich versuche, Route dynamisch wie/review- {title} - {ID} , aber verursacht Fehler weiß nicht, warum, auch wenn der Benutzer die falschen Parameter als, wie zu geben Regle dies. Meine Kundenanforderung ist wie oben, ich bin nicht gut in Knoten und Express bitte jemand schlug vor, wie Routen wie oben zu machen. Auch wenn ich eine Route wie diese machen sollte/review /: title /: id format als wie kann ich das machen.Machen Sie dynamischen Pfad in Knoten und express js

Ich versuche, aber es mich auf die 404-Seite umleiten aus,

finden Sie in meinem vorhandenen Code Details, server.js

this is working.. 
app.get('/review', (req, res) => { 
res.sendFile(path.resolve(__dirname, '../client/review.html')); 
}); 

but not this one.. 
app.get('/review-*-*', (req, res) => { 
res.sendFile(path.resolve(__dirname, '../client/review.html')); 
}); 

Also not this one working 
app.get('/review/*/*', (req, res) => { 
res.sendFile(path.resolve(__dirname, '../client/review.html')); 
}); 

This is 404 page which call evrytime while accessing dynamic pages 
app.get('/*', (req, res) => { 
res.sendFile(path.resolve(__dirname, '../client/404.html')); 
}); 
+0

Das könnte dich interessieren: http://stackoverflow.com/questions/25623041/how-to-configure-dynamic- Routen-mit-Express-js – DrakaSAN

Antwort

2

Überprüfen Sie die Syntax für Routen in Express aus.

In den meisten Fällen sind Sie besser dran Route params verwenden, z.B .:

app.get('/review/:title/:id', (req, res) => { 
res.sendFile(path.resolve(__dirname, '../client/review.html')); 
}); 

Einige mehr Flexibilität (aber undurchsichtiger für die meisten Entwickler) wäre auf regex passen.

Ich denke, Sie können ein * in der Mitte von Wörtern setzen (sie geben ein Beispiel wie '/ abc * def', aber ich bin nicht sicher, wie schön das mit den anderen Dingen spielt, die Sie tun, und ich glaube nicht, dass du mehrere * s im Muster haben kannst, wenn du das tust.)

Verwandte Themen