我如何不使用任何节点模块就可以处理多部分表单数据

问题描述 投票:1回答:1

[我正在尝试使用POST请求将图像文件提交到服务器,在前端获取请求的主体中,我像这样将主体作为FormData添加到了主体中

let formdata = new FormData(form)
async function finalFetch(formdata){
  let postReq = await fetch('/api/fileupload', {method : 'POST', body : formdata})
  let result = await postReq.json()
  return result.url;
}

现在在后端提交此表单时,我正在处理这样的数据

  req.on('data', (chunk)=>{
       console.log(chunk);
  })
  req.on('end', ()=>{
        // pseudo code, this will get replaced by something else
       res.write(JSON.stringify({
           msg : 'File Upload done',
           url : '/232'
  }));
      res.end();
 })

上面的实现给了我一个Buffer,我不知道如何在服务器中从这个缓冲区中写入文件

我知道那里有很多模块可以处理诸如multer,express,exhenable之类的格式,但是我不想使用其中的任何模块,而是试图了解这些软件包的工作方式。我只是在使用核心节点js。

javascript node.js multipartform-data form-submit
1个回答
0
投票

缓冲区被完全接收后,您应该使用核心节点模块'fs'将buf写入文件。

© www.soinside.com 2019 - 2024. All rights reserved.