使用formdata上传文件(文件上传 formdata)

FormData 接口提供了一种表示表单数据的键值对 key/value 的构造方式,并且可以轻松的将数据通过XMLHttpRequest.send() 方法发送出去,本接口和此方法都相当简单直接。如果送出时的编码类型被设为 "multipart/form-data",它会使用和表单一样的格式。

创建新的对象

const formData = new FormData()

方法

// 向 FormData 中添加新的属性值,FormData 对应的属性值存在也不会覆盖原值,
// 而是新增一个值,如果属性不存在则新增一项属性值。
FormData.append()

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

// 返回一个包含所有键值对的iterator对象。
FormData.entries()

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

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

// 返回一个布尔值表明 FormData 对象是否包含某些键。
FormData.has()

// 返回一个包含所有键的iterator对象。
FormData.keys()

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

// 返回一个包含所有值的iterator对象。
FormData.values()

使用

// 参数
const formData = new FormData()
// 获取上传文件
const file = document.getElementById("upload-file").files[0]
// 假如data是额外的其他参数
for (const key in data) {
	if (data.hasOwnProperty(key)) {
  	formData.append(key, data[key)
  }
}
formData.append('file', file)
// 发送 POST 请求
axios({
  method: 'post',
  url: '/api/upload',
  data: formData,
  headers: {
  	"Content-Type": "multipart/form-data"
  }
});

使用formdata上传文件(文件上传 formdata)

版权声明:本文内容由互联网用户投稿发布,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2211788188@qq.com 举报,一经查实,本站将立刻删除。如需转载请注明出处:https://www.wptmall.com/a/article/17902

为您推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注