将base64上传到Firebase存储并取回下载URL的步骤如下:
function base64ToBlob(base64Data, contentType) {
const byteCharacters = atob(base64Data);
const byteArrays = [];
for (let offset = 0; offset < byteCharacters.length; offset += 512) {
const slice = byteCharacters.slice(offset, offset + 512);
const byteNumbers = new Array(slice.length);
for (let i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i);
}
const byteArray = new Uint8Array(byteNumbers);
byteArrays.push(byteArray);
}
return new Blob(byteArrays, { type: contentType });
}
const storageRef = firebase.storage().ref();
const fileRef = storageRef.child('filename.jpg'); // 替换为你想要的文件名和扩展名
const blob = base64ToBlob(base64Data, 'image/jpeg'); // 替换为你的base64数据和对应的contentType
fileRef.put(blob).then((snapshot) => {
console.log('文件上传成功');
});
fileRef.getDownloadURL().then((url) => {
console.log('文件下载URL:', url);
});
这样,你就可以成功将base64数据上传到Firebase存储,并获取到对应的下载URL。
Firebase存储是Google推出的一项云存储服务,它提供了可扩展的对象存储空间,用于存储和访问用户生成的内容,如图像、音频、视频等。Firebase存储具有以下优势:
Firebase存储适用于各种应用场景,包括但不限于:
腾讯云提供了类似的云存储服务,称为腾讯云对象存储(COS)。你可以通过访问腾讯云对象存储的官方文档了解更多信息:腾讯云对象存储(COS)。
领取专属 10元无门槛券
手把手带您无忧上云