vue formdata格式传递参数,vue获取form数据
本文主要介绍Vue如何发送Formdata数据,NodeJS如何接收。有很好的参考价值,希望对你有帮助。如有错误或不足之处,请不吝赐教。
目录
Vue发送Formdata数据,NodeJS在后台接收,以检查FormData中的值。
Vue发送Formdata数据
参数blob就是通过这个;croppergetcroppedcanvas();to blob(blob={ });后天的。
具体用法请参考这个链接地址。
//这里我用的是cropperjs插件。Cropper JS通过裁剪图片成功执行了这个方法。
裁剪(斑点){
const formData=new formData();
让uid=this。$ store . getters . getuid;
formData.append(croppedImg ,blob);
formData.append(id ,uid);
//此处使用Axios请求
这个。$http。发布(“上传”,表单数据)。然后(res={
设data=res.data
if (data.code==1) {
让uploadAvatar=这个。$ store . getters . getuploadavatar;
这个。$ store . dispatch( onsavuploadavatar ,upload avatar 1);
这个。$Modal.success({
标题:“提示”,
内容:data.msg
});
}否则{
这个。$Modal.warning({
标题:“提示”,
内容:data.msg
});
}
})。catch(错误={
console.log(错误);
});
}
在前端请求之后,我们查看浏览器的网络,看是否有参数。
确保网络中有表单数据参数。如果是查询字符串参数或其他参数,可能不会成功。
NodeJS后台接收
建议使用多方模块接收参数。
多方文件的地址
//这里我配置了路由器,直接用app.post没有效果。
router.post(/upload ,(req,res)={
设obj={ };
//接收参数
let form=新多党。form();
//设置文件存储路径
form.uploadDir=。/avatar ;
//设置单个文件大小设置
form.maxFilesSize=2 * 1024 * 1024
//上传后处理
form.parse(req,function (err,fields,files) {
console.log(字段);
console.log(文件);
}
}
提示:
如果在后台使用connect-multiparty模块,它只能接收jQuery传递的formdata参数。当然,jQuery必须设置属性:
processData: false .//不处理数据contentType: false。//不设置内容类型引用地址无法接收Axios传递的参数,建议使用多方模块。
查看FormData里的值
const formData=new formData();
formData.append(basePath , fos/attach/);
formData.append(file ,e . file);
1、遍历
for(formdata . entries()的var [a,b]){
console.log(a,b,-);
}
2、get
formdata.get(键)
以上个人经历,希望能给大家一个参考,也希望大家多多支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。