Я загружаю файл на сервер API (размещенный локально для тестирования), используя ax ios .post. Файл загружается, а все остальное - просто замечательно, однако, когда Chrome вызывает onUploadProgress, progressEvent имеет только это значение:
{"isTrusted":true}
Поскольку я не видел, чтобы кто-нибудь еще сталкивался с этой проблемой, я убежден в этом проблема с моим кодом.
async uploadFileAsync(event) {
try {
if (event && event.target && event.target.files && event.target.files.length === 1) {
this.downloadPercentage = 0;
this.showProgress = true;
let formData = new FormData();
formData.append('file', event.target.files[0]);
let response = await axios.post(
this.apiUrl,
formData,
{
headers: {
'Content-Type': 'multipart/form-data'
},
onUploadProgress(progressEvent) {
window.console.log(JSON.stringify(progressEvent));
window.console.log('foo');
this.downloadPercentage = Math.round((progressEvent.loaded * 100) / progressEvent.total);
}
});
// snip
}
}
catch (error) {
// snip
}
finally {
this.showProgress = false;
}
}
Вывод моей консоли выглядит следующим образом:
{"isTrusted":true}
foo
{"isTrusted":true}
foo
{"isTrusted":true}
foo
{"isTrusted":true}
foo
...
Я пытался регулировать свою сеть с помощью Chrome, чтобы убедиться, что это не проблема и onUploadProgress вызывается сотни раз во время загрузки, и загрузка в конечном итоге завершается успешно. Но у моего progressEvent нет статуса.
Кто-нибудь знает, что может вызвать это?
Спасибо