首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在axios服务中将文件(pdf、doc)与JSON数据一起发布

如何在axios服务中将文件(pdf、doc)与JSON数据一起发布
EN

Stack Overflow用户
提问于 2017-12-28 21:47:52
回答 1查看 9.7K关注 0票数 2

我想在axios服务中发送PDF/Docs文件以及其他JSON数据。我引用了(Ajax post a file from a form with Axios),但它只发送没有任何JSON数据的文件。

代码语言:javascript
复制
 field_value: {}, // here it shows empty object,but it should show File Object
 field_type: "file_upload", 
 is_file_upload: true

}

当我在发送请求之前控制对象时,它在FormData()中显示了一个文件对象,但当我在post请求中看到它时,它显示了一个空大括号。

EN

回答 1

Stack Overflow用户

发布于 2017-12-29 00:45:52

你可以这样做:

代码语言:javascript
复制
//HTML    
<input type="file" @change="onFileChanged" :multiple="multiple" :accept="accept" />

然后是处理文件输入的javascript代码:

代码语言:javascript
复制
onFileChanged(event) {
  var files = event.target.files || event.dataTransfer.files;
  if (!files.length) {
    return;
  }

  var formData = new FormData();

  // Add the File object to the formdata
  if (this.multiple) {
    formData.append("files", files);
  } else {
    formData.append("file", files[0]);
  }

  // Add your data...
  formData.append("data", myData);
}

uploadDocument(formData) {
  return Axios.post('/api/documents', formData, {
    headers: {
      'Content-Type': 'multipart/form-data'
    }
  });
}

使用您从文件输入类型中获取的formData发送到后台。

然后你可以这样做:

代码语言:javascript
复制
uploadDocument(formData).then((response) => {
  console.log('data sent');
})  

希望能有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48008667

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档