post表单提交form-data格式数据的具体实现方式

本文分享了一次解决前端请求格式从JSON改为FormData的经历。在遇到API文档未明确指定请求格式的情况下,通过调整请求头成功实现了数据交互。文章提供了具体的Vue+Axios实现示例。

今天遇到这个问题了,因为我提交数据是json格式,然后服务端哥哥需要的是form-data格式,但是接口文档没有写,我就一直卡在数据请求这里。。。一直以为自己的问题,因为url没问题,可以请求道数据,但是请求的是错误信息,然后正确信息也一直不出现。。后来真的不知道哪里还有问题了,就厚着脸皮问了一下,结果问题竟然出在这里。。。好吧,既然你要的是form-data格式,那我就改咯,解决方式如下~

getUserInfo: function() {
  this.randomNum = randomNum(10);
  this.timeTamp = date.getTime();
  // 先创建一个FormData 对象
  let formData = new FormData();
  // 将请求参数一个一个append进去,因为涉及到项目内部东西,而且需要安全请求,所以就随便写了几个键值代替
  formData.append('x1','x1content');
  formData.append('x2',x2content);
  // 我用的vue-cli+webpack搭建的项目,所以就用了vue的axios去请求的数据
  axios.post(url,formData).then(resp => {
    this.list = Object.assign([], resp.data.data);
//这个遍历是我获取到时间戳转换成普通数据格式用的,所以可以忽略,如果看到这篇博客的人想了解一下这个函数是怎么封装的,可以去看一下我另外一篇博客,时间戳的转换问题
    for(let i = 0; i < resp.data.data.length; i++){
      this.list[i].start_timestamp = getLocalTime(new Date(resp.data.data[i].start_timestamp));
      this.list[i].end_timestamp = getLocalTime(new Date(resp.data.data[i].end_timestamp));
    }
    console.log(resp.data);
  }).catch(err => {
    console.log(err);
  })
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值