vue formdata格式传递参数,vue获取form数据

  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的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: