今天定制bootstrap(在这里),全部的勾都选过了,于是兴高采烈地点击“编译并下载”。等了一会儿,迅雷7跳出来了“新建下载任务”,但是它居然说这个url不合法!
url像这样:
blob:http%3A//v3.bootcss.com/e718dd26-ba80-498d-8be9-0fc6d2d6c7bf
1.我重新尝试下载了几次,结果都一样。
2.看到不行,我就选择把blob删掉,并把%3A改成:,但是仍然不能下载,说是404错误。
3.我直接用360搜索“blob:http://”,没有任何有关结果
4.用百度搜索“blob:http%3A//”,搜到这一篇文章,直接CTRL+F看了一下有关这个关键词的部分:
var objecturl = window.URL.createObjectURL(blob);
上面的代码会对二进制数据生成一个URL,类似于“blob:http%3A//test.com/666e6730-f45c-47c1-8012-ccc706f17191”。
这个URL的存在时间,等同于网页的存在时间,一旦网页刷新或卸载,这个URL就失效。除此之外,也可以手动调用URL.revokeObjectURL方法,使URL失效。
一下子就豁然开朗了,这个数据是前台生成的,只在该网页的Context内有效,用迅雷下载当然找不到文件,因为它只存在于那个网页的前台中!
把浏览器的下载设置改成用自带的下载,问题解决。