在Safari中调用Axios上传进度回调,但在Chrome中从不调用

问题描述

我正在尝试在vuejs,turbolinks和rails中使用axios实现上传进度栏。 因此我添加了以下代码,该代码可在Safari中使用,但不能在Chrome中完全使用。

// initialize
import VueAxios from 'vue-axios';
import axios from 'axios';
Vue.use(VueAxios,axios);

document.addEventListener('turbolinks:load',() => {
axios.defaults.headers.common['X-CSRF-Token'] = document.querySelector(`Meta[name="csrf-token"]`).getAttribute('content');
});

// form data prepare
const formData = new FormData();
formData.append('create_request[attachments_attributes][0][image]',fileElement.files[0]);
formData.append('create_request[attachments_attributes][0][note]','lorem ipsum');

// configuration
const config = {
  onUploadProgress: (e) => {
    console.log('uploading ...',e.loaded,e.total);
  },onDownloadProgress: (e) => {
    console.log('downloading ...');
  }
}

// form submit
try {
  await this.$http.put("/submit.json",formData,config);
} catch (err) {
...
}

“ onDownloadProgress”始终针对Safari和Chrome进行调用。 但是“ onUploadProgress ”仅在Safari中可用,从不 Chrome 中不可用。 请让我知道原因。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...