今天做项目的时候遇见一个问题。下载文件时在谷歌,Edge和火狐中文件名是正确显示的。但是在IOS端(这里我只是测试了平板和手机,苹果电脑的safari没有测试)微信弹窗中会出现%E4%BA%BF%E6%AC%A7%E6%99%BA%E5%BA%93%20WIA2020%20%E5%85%A8%E7%90%83%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD%E7%A7%91%E6%8A%80%E5%88%9B%E6%96%B0TOP50_2021-01-12.pdf这种乱码的情况,
解决方案如下
res.setHeader('Content-disposition', `attachment; filename=${Buffer.from(title,'utf-8').toString('binary')}.pdf;filename*=utf-8''${Buffer.from(title,'utf-8').toString('binary')}.pdf`);
通过上面代码可以解决乱码问题
如果错误欢迎指出