SeonHyungJo / Tip-Note

:round_pushpin: 개발을 하면서 느끼고 알게된 Tip:round_pushpin:
7 stars 0 forks source link

Axios Form data Interceptor로 처리하기 #87

Open SeonHyungJo opened 2 years ago

SeonHyungJo commented 2 years ago

Form data

node.js에서 다음과 같이 form-data 라이브러리를 사용할 수 있습니다:

const FormData = require('form-data');

const form = new FormData();
form.append('my_field', 'my value');
form.append('my_buffer', new Buffer(10));
form.append('my_file', fs.createReadStream('/foo/bar.jpg'));

axios.post('https://example.com', form, { headers: form.getHeaders() })
인터셉터도 대안입니다:

axios.interceptors.request.use(config => {
  if (config.data instanceof FormData) {
    Object.assign(config.headers, config.data.getHeaders());
  }
  return config;
});