使用formData上传文件(axios - > php)

时间:2018-03-13 15:02:25

标签: javascript php multipartform-data axios

我正在尝试使用.csvaxios)发送formData文件,并且我在控制器中始终是空数组。

这是我的代码和我尝试做的事情。

HTML

<input id="upload-csv-<?= $fraction->id ?>" name="uploadcsv"
 onChange="return uploadCsv(<?= $fraction->id ?>)"
 type="file" required="required"/ >

JS

function uploadCsv(fractionId) {
  let groupId = $('#customer_id').val();
  let selectedFile = $('#upload-csv-' + fractionId)[0] ? $('#upload-csv-' + fractionId)[0].files : undefined;
  const data = new FormData();
  data.append('group_id', groupId);
  data.append('fraction_id', fractionId);
  data.append('file', selectedFile);
  return new Promise(function(resolve, reject) {
    return axios.post('/refunds/uploadRefundCsv', data)
    .then(function(response) {
  ....

在控制器中我正在制作debug($_FILES)且数组为空[]

我也试过Documentation

中描述的例子

只有让var $_FILES不为空的方法才是

let file = new Blob([selectedFile ], { type: "text/xml"});

然后我无法读取我的文件(我的文件以某种方式被覆盖,我只收到消息[object FileList]

0 个答案:

没有答案