小编Uso*_*oof的帖子

在 Axios vue.js 中使用 multipart/form-data post 请求发送数组数据

我正在使用 Axios 从 vue.js 项目发送一个帖子请求,它包含一个文件上传,这需要我使用 FormData,我找到了一个很好的答案,可以帮助我使用 FormData:

const getFormData = object => Object.keys(object).reduce((formData, key) => {
     formData.append(key, object[key]);
     return formData;
}, new FormData());
Run Code Online (Sandbox Code Playgroud)

对于标题:headers: { 'Content-Type': 'multipart/form-data'}.

POST 调用如下所示:

axios.post("http://127.0.0.1:8000/api/document/",
      getFormData(this.documentData),
      {
        headers: {
          'Content-Type': 'multipart/form-data'
        }
      })
      .then(response => {
        console.log("Successfully uploaded: ", response.data)
      })
      .catch(err => {
        console.log("error occured: ", err)
      })
Run Code Online (Sandbox Code Playgroud)

这是我要发送的数据:

documentData: {
      name: '',
      file: '',
      version: '',
      company: '',
      author: '',
      category: []
    }
Run Code Online (Sandbox Code Playgroud)

当使用单个类别 id 发送数据时,它工作正常,但是当我发送多个类别 id 时,会显示以下错误:

"category": [
    "Incorrect …
Run Code Online (Sandbox Code Playgroud)

javascript vue.js axios

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

axios ×1

javascript ×1

vue.js ×1