edi*_*999 4 javascript data-uri
我想将数据导出为数据URI,只有当数据大小不超过当前浏览器支持的数据URI的最大大小时,才会将数据导出为我想要下载的文件.
document.location.href= "data:application/vnd.openxmlformats-officedocument.wordprocessingml.document;base64,"+data
Run Code Online (Sandbox Code Playgroud)
当文件太大时,这有时会导致浏览器错误,但我希望在下载之前可以捕获错误(例如尝试其他方法).
如何在JS中获取最大数据URI大小?
我已决定对此表进行硬编码:
这是我用来测试maxsize的脚本:
String.prototype.repeat = function( num )
{
return new Array( num + 1 ).join( this );
}
testDataURI=function(size)
{
window.open("data:text/plain,"+"a".repeat(size-16))
}
testDataURI(100000) //test 100k characters
Run Code Online (Sandbox Code Playgroud)