下载文件后redirect – Nodejs

我试图在下载文件后redirect页面。 这是代码:

app.get('/log', function(req,res){ return res.download('file.txt', function(err){ if(!err){ return res.render('index.html'); } }); }) 

但每次我得到这个错误:错误:发送后无法设置标头。

下载后还有另一种redirect/渲染方式吗? (在服务器端,请)。

你不能这样做,因为头已经与下载响应一起发送。

您可以通过自己操作响应来发送文件下载所需的标题,并发送位置标题。 请求者应该了解位置标题并相应地redirect。

例如。

 const fileData = /* read file */; res.set({ 'Content-Type': 'text/plain', 'Location': '/' }); res.end(fileData);