NodeJS

FormData를 이용하여 데이터 전송이 안되는 현상

케굴 2022. 8. 9. 01:46

분명 FormData에 데이터를 실어서 보냈는데 계속 body를 열어보니 비어있었다.

이유를 한참 찾아서 헤맸는데,, 

이유는 ...

 

multer를 사용할 때는 다음과 같이 라우터에 upload를 정의하여 써주어야 했다. 

app.post('/save', upload.fields([]), (req, res) => {
  console.log( req.body );
  console.log( req.files );
  res.sendStatus(200);
});

 

사실은 굳이 new FormData()를 사용하지 않고도 그냥 data를 넣어서 보내도 잘 간다.

    const response = await axios({
        method: 'post',
        url: `요청 주소`,
        headers,
        data: data,
        responseType: 'json',
      });

 

FormData를 사용하는 이유는 이미지를 전송하기 위해서 인데, 잘 모르고 코드를 사용하다가 오래 고생했다. 

 

https://stackoverflow.com/questions/44861517/express-body-parser-req-body-with-formdata-is-empty-object