FormData使用方法

一、formData格式传参与图片转化流格式
备注:不需要在全局配置请求头,通过formData可讲请求头转化为表单格式

1.首先new一个formData对象,并将参数append到formData中
//接口文件 index.js
import axios from '@/api/http'
export default {
  payEdit(params){
      return axios.post(`/sail/wxsite/wxa/payaccessconfig/edit`,params)
    },  
}
//请求接口
import api from 'index'
let file = ‘auioeorhthhti’
let dataForm = {name:'张三',age:'18'}
const formData = new FormData();
formData.append("file", file);
formData.append(ayAccessDetailParam",JSON.stringify(dataForm)    
api.payEdit(formData).then(res=>{
    console.log(res)
})

2.FormData常用参数
FormData接口提供了一种表示表单数据的键值对key/value的构造方式,并且可以轻松的将数据通过XMLHttpRequest.send()发送出去,如果送出时的编码类型被设为"multipart/form-data",它会使用和表单一样的格式
(1)FromData
FormData()构造函数用于创建一个新的FormData对象

var formData = new FormData(form)
var formData = new FormData()

form可选参数

这种方式创建的formData对象会自动将form中的表单值包含进去,包括文件内容也会被编码之后包含进去
(2)方法:
1)FormData.append()向FormData中添加新的属性值,FormData对应的属性值存在也不会覆盖原值,而是新增一个值,如果属性不存在,则新增一项属性值

formData.append(name, value);
formData.append(name, value, filename);

name:名称;
value:值
filename(可选):传给服务器文件的名称,当一个BlobFile被作为第二个参数出现的时候,Blob对象的默认文件名是“blob”,File对象的默认文件名是该文件的名称

2)FormData.set()给FormData设置属性值,如果FormData对应的属性值存在则覆盖原值,否则新增一项属性值

formData.set(name, value);
formData.set(name, value, filename);

name:名称;
value:值
filename(可选):传给服务器文件的名称,当一个BlobFile被作为第二个参数出现的时候,Blob对象的默认文件名是“blob”

3)FormData.get()返回FormData对象中给定键关联的第一个值

formData.get(name);

var formData = new FormData();
formData.append('username', 'Chris');
formData.append('username', 'Bob');
formData.get('username'); // Returns "Chris"
name:将要获取值的名称

4)FormData.getAll()返回一个包含FormData对象中给定键关联的所有值的数组

formData.getAll(name);

var formData = new FormData();
formData.append('username', 'Chris');
formData.append('username', 'Bob');
formData.getAll('username'); // Returns ["Chris", "Bob"]

name:表示要检索的key名称

5)FormData.delete()从FormData对象里面删除一个键值对

formData.delete(name);

var formData = new FormData(myForm);
formData.delete('username')

name:要删除键的名字
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值