我有一个字符串templateString
正在发布到Express中的路由。如何将此字符串作为HTML文件流式传输并下载到客户端?
res.setHeader('Content-type', 'text/html');
res.setHeader('Content-disposition', `attachment; filename=${testname}.html`);
^^这将强制浏览器下载。
如何获取请求中的字符串并以HTML文件的形式将其传递给客户端?
我认为你可以使Buffer
形成字符串并通过res.end
方法发送它。
let file = Buffer.from('Your string', 'utf8');
res.writeHead(200, {
'Content-Type': 'text/html',
'Content-disposition': `attachment; filename=${testname}.html`,
'Content-Length': file.length
});
res.end(file);
您可以阅读更多关于Buffer
here的内容
刚想通了..这最后一条简单的线似乎有效..
res.setHeader('Content-type', 'text/html');
res.setHeader('Content-disposition', `attachment; filename=${testname}.html`);
res.end(req.body.templateString);