参数为FormData 类型转换

一、准备,了解所需技术知识

  1. 上传文件表单:
   <input type="file" accept="image/*" capture="camera" >
   介绍:
1. type="file" 上传文件表单
2. accept="image/*" 上传文件类型
3. capture="camera" 使用手机摄像头拍摄
  1. 请求参数为FormData 类型
   new FormData()
   
   let formData = new FormData()          formData.append('file', e.target.files[0])

FormData作用:

  • 上传文件(二进制格式上传)
  • 提交form表单
  1. 了解一下接口
4. 上传照片: https://www.365msmk.com/api/app/public/img
"Post"请求
2.获取上传照片的网址路径
https://www.365msmk.com/api/app/user
"put"请求
5. https://www.365msmk.com/api/app/userInfo
"GET"请求
  1. axios的put请求的使用:

    axios.put(url,{}).then(res => {})
    
    1. 请求拦截

      axios.interceptors.request.use(function (config) {
          //在发送之前做些什么
         
              config.headers['authorization'] = `Bearer  token`
          
      
          return config;
      }, function (error) {
          // 对请求错误做些什么
          return Promise.reject(error);
      });
      

流程:

  1. 上传图片
  2. 设置头像
  3. 更新头像

html部分:

 <img :src="img" alt="" style="width: 80px;">
        <br>
        <label> 手机拍摄
            <input type="file" accept="image/*" capture="camera" @change="paishe($event)">
        </label>
        <br><br>
        <label>相册上传
            <input type="file" accept="image/*" @change="paishe($event)">
        </label>

逻辑部分:

 paishe(e) {
                console.log(e)
                let formData = new FormData();
                formData.append('file', e.target.files[0])
                //调用上传图片接口上传照片
                this.$http.post('https://www.365msmk.com/api/app/public/img', formData).then(res => {
                    console.log(res)
                    if (res.data.code === 200) {
                        //设置头像接口
                        this.$http.put('https://www.365msmk.com/api/app/user', {
                            avatar: res.data.data.path
                        }).then(ress => {
                            console.log('图像路径',ress)

                            this.img = res.data.data.avatar
                        })
                    }
                })
            }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值