最近一个项目使用js-xlsx-master导出excel文件,使用网上的方法,在chrome浏览器测试时,总是提示“网络异常”,如下图:
经过测试,safari浏览器和360极速是可以正常下载的,但是chrome是上面“网络错误”提示,而360安全甚至是点击下载都没有反应。
以为是代码问题,但是看了很多资料都没法解决。
后来在一个网友的回复中,看到说可能是浏览器设置导致的。
于是尝试设置了一下浏览器设置里面的下载设置,居然成功了。
以下贴出360安全和chrome的设置方法:
chrome:设置默认下载工具为“极速浏览器普通下载”
360安全:设置默认下载工具为“使用内建下载”
从该解决办法可以看出,可能是由于其他下载工具修改了浏览器的默认下载工具,而其他浏览器又无法直接下载使用js直接生成的excel文件导致的。
这种通过js直接生成的excel文件的下载url和一般通过后台进行的下载url,是不同的。
例如我测试在chrome的url为:
blob:http://localhost:18080/3baa1f4f-c674-42e3-852f-d6aaff226332
我之前安全过迅雷,可能是迅雷修改了默认下载工具为迅雷,而无法识别或者无法下载该类url导致的。