最近、node.jsを始めました。
postリクエストを受けて、その内容によってページを移動する/しない、といった挙動を実現する方法を知ったのでメモしておきます。
app.post('/insert', function(req, res) {
if (exists()) {
res.redirect(307, '/update');
}
// insert..
res.render('registered.ejs', data)
});
app.post('/update', function(req, res) { ... }
単なるリダイレクトだとhttpステータス302となり、getで示されたページを開くためpostデータが捨てられてしまいますが、307を使ってリダイレクトすると、postデータを維持したままページ移動してくれます。