更新时间:2025-03-04 10:08:45
在日常开发中,文件上传是常见的需求之一。FormData对象可以方便地将表单数据序列化,并通过XMLHttpRequest或fetch API发送到服务器,特别适合处理包含文件的表单数据。🔍
首先,创建一个FormData实例,然后使用append方法添加文件。例如,如果你有一个文件输入框,可以通过以下方式获取并添加文件:
```javascript
const formData = new FormData();
const fileInput = document.querySelector('input[type="file"]');
if (fileInput.files.length > 0) {
formData.append("file", fileInput.files[0]);
}
```
接下来,你可以使用fetch API来发送这个FormData对象。这需要设置请求头为`Content-Type: multipart/form-data`,但通常我们不需要手动设置这个头部,因为fetch会自动处理它。
```javascript
fetch('/upload', {
method: 'POST',
body: formData
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
```
这样,你就可以轻松实现文件上传功能啦!🚀 如果有任何疑问,欢迎留言讨论。💬