乐趣区

关于javascript:谷歌浏览器下载文件ERRRESPONSEHEADERSMULTIPLECONTENTDISPOSITION

问题形容:谷歌浏览器下载局部文件时,呈现【ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION】报错;

起因剖析:下载的文件名中携带了逗号【,】,导致浏览器认为设置了多个申请头。

EG:
let fileName = ‘file-name(x,y).docx’;
response(‘content-disposition’, attachment; filename=${fileName});
这样浏览器可能会解析为:response(‘content-disposition’, ‘attachment; filename=file-name(x’, ‘y).docx’);

解决方案:
计划一:将【,】替换为其余字符,fileName = fileName.replace(/,/g, ‘_’);

计划二:将 fileName 用【””】包裹起来,response(‘content-disposition’, attachment; filename=”${fileName}”);

如果不当之处敬请斧正!

退出移动版