Я пытаюсь загрузить файлы в Firebase Storage, используя JavaScript. У меня проблема в том, что каждый раз, когда я выбираю несколько файлов и загружаю их, в консоль выдается следующее сообщение об ошибке:
xhrio_network.ts: 73 GET https://firebasestorage.googleapis.com/v0/b/e-tutor-cf992.appspot.com/o/1588177804022-CW_COMP1108_6236_mw3002e_24112018_164324_1819.pdf 404
Uncaught (в обещании) b {code_: «хранилище / объект не найден», message_: «Firebase Storage: Object '1588177804022-CW_COMP110… mw3002e_24112018_164324_1819.pdf' не существует.", ServerResponse_: "serverResponse_:" {↵ "ошибка": {↵ "код": 404, ↵ "сообщение": "Нет ... не получить объект", ↵ "статус": "GET_OBJECT" ↵} ↵} ", name_:" FirebaseError "}
Мой код выглядит следующим образом:
generateBase64FromFile(fileUploads[i]).then(file => {
console.log(fileUploads[i]);
const storageRef = firebase.storage().ref();
fileRef = storageRef.child(`${new Date().getTime().toString()}-${fileUploads[i].name}`);
uploadTask = fileRef.putString(file, 'data_url');
uploadTask.on('state_changed', () => {
}, error => {
console.error(error);
document.querySelector('#processing-msg').remove();
alert('File Uploading Failed!');
}, () => {
uploadTask.snapshot.ref.getDownloadURL().then(async downloadUrl => {
files.push(downloadUrl);
filesRef.push(fileRef);
console.log('filesLength', files.length);
console.log('fileUploadsLength', fileUploads.length);
if (files.length === fileUploads.length) {
try {
let chatResponse;
const data = new FormData();
if (id == null) {
const to = [groupId];
data.append('to[]', to[0]);
data.append('message', message);
data.append('groupId', groupId);
for (let i = 0; i < files.length; i++) {
data.append('files[]', files[i]);
}
chatResponse = await fetch(`${baseURL}/message`, {
method: 'POST',
headers: {Authorization: `Bearer ${token}`},
body: data
});
} else {
data.append('to', id);
data.append('message', message);
for (let i = 0; i < files.length; i++) {
data.append('files[]', files[i]);
}
chatResponse = await fetch(`${baseURL}/message`, {
method: 'POST',
headers: {Authorization: `Bearer ${token}`},
body: data
});
}
if (chatResponse.status === 201) {
const chatData = await chatResponse.json();
if (id == null) {
document.querySelector('#processing-msg').remove();
} else {
document.querySelector('#processing-msg').setAttribute('id', chatData.data.message._id);
}
}
} catch (err) {
console.error(err);
}
}
});
});
});
Я ожидаю, что все изображения будут загружены и их URL загрузки будут загружены, но вместо этого он выдает ошибку, которая, кажется, блокирует остальную часть моего кода от работы, хотя, когда я проверил FireBase, я заметил, что файлы были загружены, но я не знаю, почему это выдает ошибку. Пожалуйста, что я делаю не так?
(Необязательно): Вот изображение ошибки консоли на всякий случай: https://imgur.com/kXQIFm2