本地启服务测试,没问题. 将代码更新到服务器(centOS6.8)之后. 测试图片上传.报这个错: ERR_CONTENT_LENGTH_MISMATCH 处理请求的代码: try{ var imgData = req.body.headPortrait; var userId = req.body.userId;
var base64Data = imgData.replace(/^data:image\/\w+;base64,/, "");
var dataBuffer = new Buffer(base64Data, 'base64');
//将buffer写成文件,文件名如果重名的话.则会覆盖
fs.writeFile('./public/uploads/headPortrait'+userId+'.jpg',dataBuffer,function(err){
console.log(err);
});
var user = userService.updateUser({'headPortrait':'/uploads/headPortrait'+userId+'.jpg'},userId);
console.log(user.get({'plain': true}));
return res.json("上传成功!");
}catch(e){
return res.json("错误信息:"+e.description );
}
代码意思是.将传过来的的图片转成buffer然后存入指定的目录 再调用自己定义的userService.updateUser()方法,存入数据库. 我在网上查询了下这个错误.说可能是 用户/目录权限的问题. 但是没有找到解决方案. 前不久才开始玩centOS的.这方面不是很懂. 麻烦各位大大,看下可能的解决问题的方法.