Javascript 如何解构文件对象

Javascript 如何解构文件对象,javascript,Javascript,我有一个带“body”参数的in请求。我在执行console.log(req.body)时得到了下面的body对象。我想对文件进行解构或使用,以便进一步处理/上载 请求的格式如下所示 formData = new FormData(); formData.append("files", file) //file is of type File, and will be attached from browser 如何从下面的对象获取文件的文件名和缓冲区 body: [Ob

我有一个带“body”参数的in请求。我在执行
console.log(req.body)
时得到了下面的body对象。我想对文件进行解构或使用,以便进一步处理/上载

请求的格式如下所示

formData = new FormData();
formData.append("files", file) //file is of type File, and will be attached from browser
如何从下面的对象获取文件的文件名和缓冲区

 body: [Object: null prototype] {
    files: '[object File]',
    userName: 'TestUser'
  },
我试过了

console.log(req.body.files)
发出

[object File]

如何进一步分解此文件以获取有关它的详细信息

您需要使用文件读取器读取该文件

reader=newfilereader();
reader.readAsBinaryString(req.body.files);
reader.onloadend=函数(){
console.log(reader.result);
}

日志表明您收到的是字符串
“[对象文件]”
,而不是实际文件。确保客户端代码中的
文件
确实是
文件
实例,并且没有在某个地方被字符串化。是的,它是一个文件实例。您看到这种格式的原因是因为主体解析器,我使用multer在to react axis路由器中获取表单数据。请参见“是”,您必须使用multer来解析主体,但它看起来仍然只是在主体中发送
文件=[object%20File]&userName=TestUser
。请张贴完整的代码。提交并添加formData.append(文件[0])在哪里?然后做什么?不,node.jso中没有
FileReader
。哦,对不起,我的意思是您正在尝试在浏览器中执行此操作。我建议你用一个像multer这样的图书馆来做这个。你不必如此激烈地否决投票:p;-)@是的,我也在这样做,但是formData错误地进入express server。看到我的另一个帖子了吗