Как отправлять и принимать binary data(blob) JS

Я пытаюсь отправить на бэкэнд(express) видео, оно записано через mediaRecorder в blob формате. Подскажите в каком виде лучше отправлять (best practise так сказать) и как обрабатывать на бэке, а потом записать в файл. Подскажите что я делаю не так, целый день на это убил(

const blob = new Blob(chunks, { type: "video/mp4;" });

let response = await fetch('http://localhost:3001/upload', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/octet-stream',
  },
  body: blob
});

Бэкэнд:

const express = require("express");
const cors = require('cors');
const fs = require('fs');

const app = express();
const port = 3001;

app.use(express.static('public'));
app.use(cors({
  origin: 'http://localhost:3000'
}));

app.post("/upload", (req, res) => {
  console.log('req.files', req.files)
  console.log('req.body', req.body)
});

app.listen(port, () => {
  console.log(`Server started at http://localhost:${port}`);
});

логи бэка


Ответы (0 шт):