2013-04-05 29 views
13

Sono in corso in /id/1234 pagina e fare clic su un pulsante di POST /add, dopo che voglio ricaricare /id/1234 in Experss.js: res.redirect(**How to get /id/1234 dynamicly, since I will be in /id/1235, /id/1236 page do a same POST /add action?**)Come ricaricare la pagina corrente in Express.js?

Grazie.

risposta

0
res.redirect("/id/1234") 

Basta dare il percorso (o URI completo) a cui si desidera reindirizzare.

E se siete id è nei dati del messaggio:

res.redirect("/id/" + req.body.id); 
14

per darvi la risposta probabilmente si desidera, il browser invierà un'intestazione chiamato [Referer][1] che avrà l'URL della pagina /id/1234, quindi:

res.redirect(req.get('referer')); 

Tuttavia, la progettazione del percorso dell'URL è probabilmente scadente se è necessario farlo. Le migliori opzioni potrebbero essere l'invio del modulo tramite AJAX senza modificare l'URL o incluso l'id 1234 nel corpo del modulo e utilizzando tale valore dalla richiesta POST per generare l'URL corretto per il reindirizzamento corrispondente.

+0

penso è res.redirect (req.get ('referer')) – vladexologija

25

Vorrei solo aggiungere che nella versione 4.x di Express è possibile utilizzare

res.redirect('back'); 

per reindirizzare automaticamente alla pagina la richiesta proveniva da. Questa è l'equivilant di

res.redirect(req.get('referer')); 

menzionato nella Peter Lyons answer

Vedi anche: http://expressjs.com/api.html#res.redirect

3

Io uso 4.x espresso è possibile scrivere come questo

res.redirect(req.originalUrl) 
Problemi correlati