我有一个像这样的路线的快递应用
router.get('/jobs/:jobid/edit', jobController.editJob)
editJob抓取一些信息并显示一个表单,用于编辑一些细节。该表单方法是POST到/ jobs / $ {jobId} / edit。所以我有这样的路线:
router.post('/jobs/:jobid/edit', jobController.postJob)
我的postJob现在非常基本,因为我刚刚设置好,所以基本上我已经得到了这个:
exports.postJob = (req, res, next) => {
//Do a bunch of stuff...
//Redirect back to original page so it will display the updated content
//Things I've tried...
res.redirect('back')
res.redirect(req.originalUrl)
this.editJob(req, res)
}
他们都抛出错误Error: Can't set headers after they are sent.
我甚至尝试将邮寄路线更改为:
router.post('/jobs/:jobid/edit', jobController.postJob, jobController.editJob)
并将next()
添加到postJob,但这也不起作用。
处理发布数据并让他们回到"编辑"的正确方法是什么?查看?