首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Firebase v9上传图像仅显示9个字节

Firebase v9上传图像仅显示9个字节
EN

Stack Overflow用户
提问于 2021-12-30 04:06:59
回答 1查看 765关注 0票数 1

我使用react本机和防火墙(v9)将图像上传到防火墙。在firebase存储中,文件已上载,但大小仅为9个字节,因此没有正确打开。我不知道如何解决这个问题。

代码语言:javascript
复制
const uploadFiles = (file, name, storeKey) => {
    if(!file){
        console.log('no file exists')
        return;
    }
    const exe = file.substring(file.lastIndexOf('.'));
    const fileName = name + exe;
    const storageRef = ref(storage, `/files/${fileName}`);
    const uploadTask = uploadBytesResumable(storageRef, file);
    uploadTask.on('state_changed', null,
        (error) => {
            alert(error);
        },
        () => {
            getDownloadURL(uploadTask.snapshot.ref)
            .then((URL) => {
                setDoc(doc(db, 'Store', storeKey, 'coffeeDB', name), {postImage: URL}, {merge: true});
                console.log('url registered')
            });
        }
    )
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-30 04:24:03

考虑到您正在调用file.substring(...)file似乎是一个文件名。您不能仅仅通过传递文件名来上传文件,因为这将是一个安全风险。相反,您需要传递一个Blob | Uint8Array | ArrayBuffer,如这里这里所示,通常通过传递获取文件名的File引用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70527364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档