我想使用IE9下载(任何类型的)文件,而不需要任何重定向。通过重定向,我的意思是提供我试图下载到当前文档的资源的URL,如果MIME类型不是文档类型,则强制下载。
因此,我不得不使用XHR对象获取数据,并找到一种将其保存在磁盘上的方法。由于我使用的是IE9,所以不能使用IE10+中提供的任何File。
所以忘了:
BlobFileSaver (https://github.com/eligrey/FileSaver.js/) Blob和typedarray填充需要调试,我无法使它们工作
现在,在REST调用之后,我正在获取数据,并试图将其写入如下文章中的文档:Javascript Save CSV file in IE 8/IE 9 without using window.open()
但是,问题是document.write()似乎对任何写在UCS-2中的东西都进行了编码,所以从后端发送的二进制文件会被重新解释,文件会被破坏。我猜那时只能保存基于文本的文件。
最后一点,我不应该使用闪光灯。
有没有人想到要解决编码问题,或者有其他技术来下载?
如果可以的话,我使用angularjs作为前端JS框架。
发布于 2015-09-15 17:50:19
对于我们的限制,将令牌作为参数传递以获取可下载的文件资源是解决方案。当我们提升IE时,我们将改变解决方案的艰难性。
它意味着删除任何安全链过滤器,并对后端的令牌执行手动验证。
https://stackoverflow.com/questions/31836731
复制相似问题