如何使用javascript中的axios发送post文件和正文?

如何使用javascript中的axios发送post文件和正文?,javascript,axios,Javascript,Axios,如何在axios中通过post发送一个文件和一个json(body)参数我有这个结构,但我不能发送,我有下面的代码,虽然我设法抓取了文件,但我不能发送,我在其他答案中也看到了我发送到body中的每个参数的附加,但我需要发送一个数组和整数 const data = new FormData(); data.append("imagen", this.file); axios.post("https

如何在axios中通过post发送一个文件和一个json(body)参数我有这个结构,但我不能发送,我有下面的代码,虽然我设法抓取了文件,但我不能发送,我在其他答案中也看到了我发送到body中的每个参数的附加,但我需要发送一个数组和整数

            const data = new FormData();
            data.append("imagen", this.file);
            axios.post("https://url/register",
            {
                "typeEvent":[1,2],
                "campus":[1,2],
                "user_id":1,
                "survey_id":1,
                "evn_name":"prueba desde vue",
                "evn_description":"prueba descriocion",
                "evn_miles":300,
                "evn_start_day":"2021-02-05",
                "evn_end_day":"2021-02-05",
                "evn_cost":0,
                "evn_state":1
            },
            data, 
            {
                headers: {
                'Content-Type': 'multipart/form-data'
                }
            }
            ).then((result) => {
                console.log(result);
            }).catch((err) => {
                console.log(err);
            });

您希望遍历该对象并将每个条目附加到FormData对象

然后只需执行
axios.post(url、数据,{head…

const obj = {
  "typeEvent": [1, 2],
  "campus": [1, 2],
  "user_id": 1,
  "survey_id": 1,
   // ....
  "evn_state": 1
}
const data = new FormData();
data.append("imagen", this.file);

Object.entries(obj).forEach(([k, v]) => {
  if (Array.isArray(v)) {
    // used stringify but might also just use join() for comma separated string
    v = JSON.stringify(v);
  }
  data.append(k, v);
});