我上传图像到firebase存储有问题,它不断上传9B文件到存储,即使选择的文件是一个100MB的文件。它显示的进度为NaN%,一旦我成功上传图像到firebase存储,但现在我失败了😭这里是代码,
const app = initializeApp(firebaseConfig);
const analytics = getAnalytics(app);
const storage = getStorage();
var picker = document.getElementById('img');
picker.onchange = function(){
var file = window.URL.createObjectURL(picker.files[0]);
var filename = picker.files[0].name;
const storageRef = ref(storage, 'icons/' + filename);
// 'file' comes from the Blob or File API
uploadBytes(storageRef, file).then((snapshot) => {
console.log('Uploaded a blob or file!');
});
}
我尝试了许多选项,我不知道为什么它不工作,我想上传图片和下载网址。
2条答案
按热度按时间mbyulnm01#
您必须将实际的File对象而不是对象URL传递给
uploadBytes
。o8x7eapl2#
似乎您提供了图像blob/file的url,而不是传递文件本身。请尝试将第8行更改为
var file = picker.files[0]
。如果这样做不起作用,请尝试在
file
初始化后对其进行日志记录,以确保它存在。