刚学nodejs 浏览器发送过得txt文件中文无法正常解析 已设置utf8

初学nodejs 浏览器发送过得txt文件中文无法正常解析 已设置utf8
客户端使用 FormData 发送的 txt文件

const http = require("http");
const fs =  require('fs')
const serve = http.createServer((req, res) => {
const fswrite = fs.createWriteStream('./真实简历.txt', {
  flags: 'a+',
  encoding: 'utf8'
})
  res.setHeader("Content-Type", "application/json;charset=utf-8");
  res.setHeader("Access-Control-Allow-Origin", "*");
  res.setHeader("Access-Control-Allow-Headers", "*");
  res.setHeader("Access-Control-Allow-Methods", "*");
  // 格式
  req.setEncoding('UTF-8')
  let fff = ''
  // 接收 文件信息
  req.on('data', (data) => {
    console.log('data',  data.toString());
    console.log('data',  data);
    fff += data
    // 持续写入
    fswrite.write(data)

  })
  req.on('end',() => {
    fswrite.close()
  })
  res.end(JSON.stringify({ A: 123 }));
});
serve.listen(8000, () => {
  console.log("服务器已经启动 http://127.0.0.1:5500");
});


打印结果

img

我想知道怎么正确解析里面的中文

请注意,上面的数据是被包装在multipart/form-data格式中的,因此需要使用第三方库解析该格式。

可以使用以下代码解析文件:

const multer = require('multer');
const storage = multer.memoryStorage();
const upload = multer({ storage: storage });

// 解析 multipart/form-data
app.post('/file', upload.single('a'), (req, res) => {
const file = req.file;
console.log(file.buffer.toString('utf-8'));
res.send(file.buffer.toString('utf-8'));
});

这段代码需要安装multer库,可以在命令行使用npm install multer安装。