使用 angularjs 从 PHP REST API 下载 docx 文件
Posted
技术标签:
【中文标题】使用 angularjs 从 PHP REST API 下载 docx 文件【英文标题】:download docx file from PHP REST API with angularjs 【发布时间】:2015-07-26 17:09:30 【问题描述】:我有一个用 SLIM 框架编写的 php REST API,我有一个 api 调用,它创建一个 docx 文件并强制下载该文件。
$filename = 'invitation.docx'; $模板处理器->保存($文件名); header('内容描述:文件传输'); header('内容类型:应用程序/强制下载'); header('Content-Disposition: attachment; filename='.basename($filename)); header('内容传输编码:二进制'); header('内容长度:'.filesize($filename)); ob_clean(); ob_flush(); 读取文件($文件名); 出口(); 文件已创建,我可以通过服务器读取它。 但问题出在客户端文件已损坏 Data.get('downloadInvitation/'+ id).then(function(results)
var file = new Blob([results], type: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' );
saveAs(file, 'invitation.docx');
);
有人有想法吗?
【问题讨论】:
【参考方案1】:我遇到了同样的问题。只需将 responseType: 'arraybuffer'
添加到您的 get 配置中即可。
【讨论】:
以上是关于使用 angularjs 从 PHP REST API 下载 docx 文件的主要内容,如果未能解决你的问题,请参考以下文章
如何将包含 CSRF 令牌的数据从 angularjs 控制器提交到 REST 控制器?
如何使用 AngularJS 和 Restangular 返回/编辑 REST 资源
如何使用 AngularJS 和 Restangular 返回/编辑 REST 资源
使用 ANGULARJS 从 Jersey rest api 调用中下载/保存文件。文件附加响应为“Content-Disposition”