uniapp下载文件为blob怎么处理
时间: 2023-12-23 16:06:32 浏览: 453
在uniapp中,可以使用uni.downloadFile()方法来下载文件,下载完成后会返回一个临时文件路径,可以使用uni.getFileSystemManager()方法将其转成blob对象。
以下是实现代码:
```
uni.downloadFile({
url: 'your download url',
success: (res) => {
if (res.statusCode === 200) {
uni.getFileSystemManager().readFile({
filePath: res.tempFilePath,
encoding: 'base64',
success: (data) => {
let base64 = 'data:image/jpeg;base64,' + data.data
let blob = this.base64ToBlob(base64)
console.log(blob)
}
})
}
}
})
// base64转blob
base64ToBlob(base64) {
let arr = base64.split(',')
let type = arr[0].match(/:(.*?);/)[1]
let bstr = atob(arr[1])
let n = bstr.length
let u8arr = new Uint8Array(n)
while (n--) {
u8arr[n] = bstr.charCodeAt(n)
}
return new Blob([u8arr], { type: type })
}
```
这样就可以将下载下来的文件转成blob对象了。
阅读全文