Javascript 如何处理内容描述:AngularJS$http响应中的文件传输

Javascript 如何处理内容描述:AngularJS$http响应中的文件传输,javascript,json,angularjs,http,Javascript,Json,Angularjs,Http,短版本:$http请求在桌面上正常工作,在移动设备上失败 在Angular控制器中,我有一个对资源的$http GET调用,该调用返回以下响应头: Access-Control-Allow-Origin:* Cache-Control:must-revalidate, post-check=0, pre-check=0 Connection:Keep-Alive Content-Description:File Transfer Content-Disposition:attachment; f

短版本:$http请求在桌面上正常工作,在移动设备上失败

在Angular控制器中,我有一个对资源的$http GET调用,该调用返回以下响应头:

Access-Control-Allow-Origin:*
Cache-Control:must-revalidate, post-check=0, pre-check=0
Connection:Keep-Alive
Content-Description:File Transfer
Content-Disposition:attachment; filename=verses.json
Content-Length:1392
Content-Transfer-Encoding:binary
Content-Type:application/octet-stream
Date:Sun, 16 Aug 2015 23:13:18 GMT
Expires:0
Keep-Alive:timeout=5, max=100
Pragma:public
Server:Apache/2.4.6 (CentOS) OpenSSL/1.0.1e-fips PHP/5.4.16
X-Powered-By:PHP/5.4.16
如图所示,响应被识别为JSON

但是,如果在移动设备上加载相同的JSFIDLE,则不会返回任何结果。我已经研究了$http的transformResponse,但是文档非常稀少,我找不到有人试图获取我得到的东西的例子。有一些将JSON响应转换为可下载文件的示例,但我正在寻找相反的结果


我知道一个显而易见的解决方案是让API返回application/json而不是application/octet流,但在这之前,我非常感谢您的帮助或为我指明正确的方向。谢谢

首先,我要删除无意义的头字段(在HTTP中没有任何意义的头),例如“内容描述”和“内容传输编码”。现在对所有缓存相关信息也要这样做。我首先要删除无意义的头字段(在HTTP中没有任何意义的头),例如“内容描述”和“内容传输编码”。现在对所有缓存相关信息执行相同的操作。