Reload einer Seite nach res.redirect('zurück') in der route
Arbeite ich an einer Anwendung, die erlaubt Ihnen, Bilder hochladen und Alben erstellen. Alles funktioniert gut akzeptieren, dass nach einem album wird erstellt, wenn das neue album nicht im client, bis die Seite neu geladen, und ich kann nicht herausfinden, wie man dieses Problem lösen.
Unten ist die route für ein album erstellen. Ist es irgendwie möglich, etwas anderes als die res.redirect('zurück') in diesem Fall so, dass die Seite neu geladen wird, nachdem die route fertig?
Natürlich könnte ich copy/paste den code aus der route für das laden der Seite in den ersten Platz, aber das wäre zu viel TROCKEN. Vielleicht kann ich rufen Sie die andere route aus dem route?
route:
app.post('/album', function(req, res){
var newAlbum = new albumModel.Album();
newAlbum.imageName = req.body.albumPicsName;
newAlbum.imageId = req.body.albumPicsId;
newAlbum.title = req.body.albumTitle;
newAlbum.save(function (err) {
if (err) {
console.log(err);
//do something
console.trace();
}
res.redirect('back');
});
});
InformationsquelleAutor holyredbeard | 2012-04-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie in der Lage sein zu tun, res.redirect('/album") statt zurück zu zwingen, vollständig neu laden, bekomme aber die gleiche Art von feedback.
InformationsquelleAutor AntelopeSalad
'zurück' ist ein alias für
req.get('Referrer')
also, wenn '/Alben " ist Ihr referrer könnten Sie immer noch Probleme mit der browser-Rückkehr 304 (http nicht geändert) http-status oder ein browser-Cache-Seite (Häufig). Wenn Sie Erfahrung, die Ausgabe, die Sie tun können, ein paar Dinge:Senden Sie einige cache-clearing-Header:
Oder ändern Sie die url:
Natürlich, wenn Sie wissen, die url, z.B. '/Alben, die Sie nicht haben zu gehen, obwohl alle, die rigamarole, um einige der Versionsverwaltung - fügen Sie einfach den aktuellen timestamp in der url-Zeichenfolge.
Der erste Weg ist sauberer und funktioniert besser, imo. Ich habe gesehen, Fälle, wenn eine Seite nicht über einen referrer-obwohl ich klar kam von einer anderen Seite durch caching.
InformationsquelleAutor cyberwombat