我在React.js中输入以下内容:
<input onChange={this.handleChange("file")} type="file" name="fileToUpload" id="fileToUpload"/>
然后,我的onSubmit方法方法向节点执行发布请求,如下所示:
onSubmit(state) {
let image = document.getElementById("fileToUpload").files[0];
fetch('http://localhost:4000/upload', {
method: 'POST',
headers: {
// 'Access-Control-Allow-Credentials': 'true',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
'name': this.state.name,
'meta' : this.state.metaData,
'id': this.state.buildingId,
'location': this.state.location,
'image': image
})
})
}
现在在节点中,如果我在express req.body.image中注销。我刚得到一个空的{}。
文件上传过程出了什么问题?
谢谢
更新:
我有这些身体解析器:
app.use( bodyParser.json({limit: '50mb'}) );
app.use(bodyParser.urlencoded({
limit: '50mb',
extended: true,
parameterLimit:50000
}));
我也有:
app.post('/upload', function (req, res, next) {
console.log('sent');
console.log(req.body);
})
我现在收到错误:
SyntaxError: Unexpected token - in JSON at position 0