我有用例需要渲染后跟重定向.渲染应该使用继承视图模型然后重定向到主页来通知用户成功的事务.以下是所需的代码: router.post('/posturi', function(req, res, next) { //Call few services if(err){ r
router.post('/posturi', function(req, res, next) { //Call few services if(err){ return res.render('/errorpage') } res.render('/transaction page'); //TimeOut function goes here res.redirect('/home'); });
一种方法是在下一个插入中间件,但这看起来不是最好的方法.如果有办法实现,请告诉我
正如其他人所说,使用302状态时,您不能同时拥有重定向和渲染内容.但是,你可以做的是使用渲染的内容返回200状态,然后使用< meta>标签或页面本身的setTimeout()进行重定向.这将简要显示内容(无论您想要设置多长时间),然后重定向到新页面.例如,您可以将其放在实际的页面内容中,以便浏览器本身在显示您的内容后进行重定向:
<script> setTimeout(function() { window.location.replace("http://whatever.com/newpage.html") }, 2000); </script>
或这个:
<meta http-equiv="refresh" content="2;url=http://whatever.com/newpage.html">