我有一个使用SLIM Framework编写的PHP REST API,我有一个api调用,它会创建一个docx文件并强制下载该文件。
$filename = 'invitation.docx'; $templateProcessor->save($filename); header('Content-Description: File Transfer'); header('Content-type: application/force-download'); header('Content-Disposition: attachment; filename='.basename($filename)); header('Content-Transfer-Encoding: binary'); header('Content-Length: '.filesize($filename)); ob_clean(); ob_flush(); readfile($filename); exit();文件已创建,我可以通过服务器读取它 但问题是在客户端文件已损坏
Data.get('downloadInvitation/'+ id).then(function(results) {
var file = new Blob([results], { type: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' });
saveAs(file, 'invitation.docx');
});
有没有人有想法?
答案 0 :(得分:0)
我遇到了同样的问题。只需将responseType: 'arraybuffer'
添加到您的获取配置中即可。