Wenn ich dich richtig verstehe, würde ich das umgekehrt machen.
Kurzfassung
- Ich würde die
id
erhalten aus der URL - Dann würde ich die mit dieser
id
verknüpften Daten aus der Datenbank ziehen - Und verwenden Sie diese Daten, um die endgültige Seite zu erstellen.
Sie müssen nicht für jede URL eine neue Route erstellen. Eine URL kann eine Variable enthalten (hier die id
) und Express kann die URL parsen, um diese Variable zu erhalten. Dann von dieser id
Sie können die Daten abrufen, die zum Erstellen der richtigen Seite erforderlich sind.
Lange Version
Ich nehme an, jemand gibt diese URL ein:http://domain.com/1234
.
Ich gehe auch davon aus, dass Sie eine Variable titles
haben das ist eine MongoDB-Sammlung.
Sie können eine Route wie folgt definieren:
app.get('/:id', function(req, res) {
// Then you can use the value of the id with req.params.id
// So you use it to get the data from your database:
return titles.findOne({ id: req.params.id }, function (err, post) {
if (err) { throw(err); }
return res.render('titles', {title: post.title, url: post.URL /*, other data you need... */});
});
});
Bearbeiten
Ich habe einige Änderungen gemäß den letzten Kommentaren vorgenommen...