我正在尝试使用React和Node / Express上传文件。正如Postman测试的那样,节点部分正常工作。但是,我似乎无法对正确发送文件做出反应。以下是我的代码。
反应
class AddDocumentModal extends Component{
constructor(props){
super(props)
this.state = {
file: null
}
this.onChange = this.onChange.bind(this)
this.fileUpload = this.fileUpload.bind(this)
}
onChange(e){
this.setState({
file:e.target.files
})
console.log(this.state.file)
}
fileUpload(event){
console.log(this.state.file)
let formData = new FormData()
formData.append('file',this.state.file)
let fetchURL = this.props.baseURL + "uploadFile"
let fetchOptions = {
method: "post",
body:formData
}
console.log(fetchOptions)
fetch(fetchURL,fetchOptions).then(result=>{
console.log(result)
})
}
节点
exports.uploadFile = (req,res)=>{
console.log(req.files);
let file = req.files.file;
file.mv(`${__dirname}/public/${file.name}`, function(err) {
if (err) {
return res.status(500).send(err);
}
res.json({file: `public/${file.name}`});
});
}
req.body和req.files都是空集。有什么建议?