Отправка данных составной формы с использованием Axios в Node.js: методы и примеры

Чтобы отправить данные составной формы с помощью Axios в Node.js, вы можете использовать несколько методов. Вот несколько вариантов:

  1. Использование объекта FormData. Вы можете создать объект FormData, добавить к нему поля и файлы формы, а затем отправить его с помощью Axios. Вот пример:
const FormData = require('form-data');
const axios = require('axios');
const fs = require('fs');
const formData = new FormData();
formData.append('field1', 'value1');
formData.append('field2', 'value2');
formData.append('file', fs.createReadStream('/path/to/file'));
axios.post('http://example.com/upload', formData, {
  headers: formData.getHeaders()
})
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    console.error(error);
  });
  1. Использование метода axiospostс FormDataнапрямую: вы можете передать объект FormDataнепосредственно в качестве данных. параметр метода axios.post. Вот пример:
const axios = require('axios');
const fs = require('fs');
const formData = new FormData();
formData.append('field1', 'value1');
formData.append('field2', 'value2');
formData.append('file', fs.createReadStream('/path/to/file'));
axios.post('http://example.com/upload', formData, {
  headers: formData.getHeaders()
})
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    console.error(error);
  });
  1. Использование метода axiosrequest: вы можете использовать метод axios.requestи указать multipart/form-dataтип контента в заголовках. Вот пример:
const axios = require('axios');
const fs = require('fs');
const data = new FormData();
data.append('field1', 'value1');
data.append('field2', 'value2');
data.append('file', fs.createReadStream('/path/to/file'));
axios.request({
  method: 'post',
  url: 'http://example.com/upload',
  data: data,
  headers: {
    'Content-Type': `multipart/form-data; boundary=${data._boundary}`
  }
})
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    console.error(error);
  });

Эти методы позволяют отправлять данные составной формы с помощью Axios в Node.js. Не забудьте настроить URL-адрес и пути к файлам в соответствии с вашим конкретным случаем.