浏览器Blob下载文件的大小上限是多少?

很少看到相关资料,很多人都说Blob的上限是2G,但我本地测试发现Blob字节数可以远远大于2G,且可以正常转换为ObjectURL然后下载,Blob是没有大小限制吗,那么大文件下载,大文件的定义是什么呢

阅读 6.1k
2 个回答
https://chromium.googlesource.com/chromium/src/+/HEAD/storage/browser/blob/README.md

Blob Storage Limits
We calculate the storage limits here.

In-Memory Storage Limit

If the architecture is x64 and NOT Chrome OS or Android: 2GB
If Chrome OS: total_physical_memory / 5
If Android: total_physical_memory / 100
Disk Storage Limit

If Chrome OS: disk_size / 2
If Android: 6 * disk_size / 100
Else: disk_size / 10

Example Limits

DeviceRamIn-Memory LimitDiskDisk LimitMin DiskAvailability
Cast512 MB102 MB000
Android Minimal512 MB5 MB8 GB491 MB10 MB
Android Fat2 GB20 MB32 GB1.9 GB40 MB
CrOS2 GB409 MB8 GB4 GB0.8 GB
Desktop 323 GB614 MB500 GB50 GB1.2 GB
Desktop 644 GB2 GB500 GB50 GB4 GB

感谢papersnake的回答,尝试了一下,由于FileBlob并不会直接将文件读取到内存中,实际上这里的大小限制在于是否可以执行FileReaderread操作,因为读取操作会把文件内容实实在在地读取到内存中,当超过了大小限制时,就不会允许你进行读取操作,但切片Slice操作是完全允许的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏