Загрузка файла в NestJS не проходит

#javascript #typescript #axios #nestjs

Вопрос:

Я хочу загрузить файл из моего собственного приложения React в конечную точку API, написанный на NestJS. Я использую адаптер fastify с пакетом fastify-multipart.

Вот как я отправляю файл в свой API:

 const data = new FormData();  const file = new File([blob], "image1");   console.log(file.size);   data.append("file", file);   const result = await axios  .post("https://myapiurl/settings/upload-avatar", data, {  headers: {  "Content-Type": "multipart/form-data",  },  })  

В приведенном выше журнале консоли выводится следующий вывод для примера .png 1210126, так что в моих глазах это означает, что файл правильный и проблема заключается в серверной части.

Это моя функция контроллера для конечной точки:

 @Post('upload-avatar')  async uploadAvatar(@Req() req: fastify.FastifyRequest,@Res() res: fastify.FastifyReplylt;anygt;) {  const parts = req.parts();   for await (const part of parts) {  if (part.file) {  const buffer = await part.toBuffer();  console.log(buffer.length, buffer.byteLength)  }  }   console.log("done");  }  

Я много пробовал, но в конечном итоге всегда получается, что длина буфера равна 0, и я в основном получаю пустой файл в своем бэкэнде.