从“[object Object]”获取表单数据

get form data from '[object Object]'

我在 FormData 中传递上传的文件和数据对象:

let data = new FormData();
data.append("file", this.state.files);
data.append("data", formData);

formData 只是一个 Json 对象,例如:formData = { "a":123 }

使用 put 请求和 axios 将数据传递到节点服务器,我能够在请求中获取文件对象和数据,但在数据字段中它给出 '[object Object]'

不知道如何访问它。我试过 JSON.parse(req.body.data),但出现错误

SyntaxError: Unexpected token o in JSON at position 1

看起来 formData 是一个在通过网络发送之前转换为字符串 [object Object] 的对象。试试 data.append("data", JSON.stringify(formData)).

使用JSON.stringify发送对象,然后在接收数据后使用JSON.parse,使字符串对象再次成为对象。