axios 上传文件极简示例

1. 直接从磁盘上传

复制代码
<!DOCTYPE html>
<html>
<head>
  <title>文件上传示例</title>
</head>
<body>
  <h1>文件上传示例</h1>
  <form enctype="multipart/form-data">
    <input type="file" id="fileInput" multiple>
    <button type="button" onclick="uploadFiles()">上传文件</button>
  </form>
  <ul id="uploadedFilesList"></ul>
  <script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
  <script src="app.js"></script>
</body>
</html>
复制代码

app.js

复制代码
// 定义上传文件的函数
function uploadFiles() {
  var fileInput = document.getElementById('fileInput');
  var files = fileInput.files;
  
  // 创建FormData对象,用于包装文件数据
  var formData = new FormData();
  
  // 将文件数据添加到FormData对象中
  for (var i = 0; i < files.length; i++) {
    formData.append('files', files[i]);
  }
  
  // 发送POST请求
  axios.post('/upload', formData, {
    headers: {
      'Content-Type': 'multipart/form-data'
    }
  })
  .then(function(response) {
    // 上传成功后的处理
    console.log('上传成功', response.data);
    
    // 在页面上展示已上传的文件信息
    var uploadedFilesList = document.getElementById('uploadedFilesList');
    for (var i = 0; i < response.data.length; i++) {
      var li = document.createElement('li');
      li.textContent = response.data[i].filename;
      uploadedFilesList.appendChild(li);
    }
  })
  .catch(function(error) {
    // 上传失败后的处理
    console.error('上传失败', error);
  });
}
复制代码

2. 从内存数据上传

复制代码
var image1 = new File([_blob1], paperId + '_01.tif');
var image2 = new File([_blob2], paperId + '_02.tif');

// 创建FormData对象,用于包装文件数据
var formData = new FormData();
formData.append('files', image1);
formData.append('files', image2);

// 发送POST请求
axios.post('/upload', formData, {
  headers: {
    'Content-Type': 'multipart/form-data'
  }
})
.then(function(response) {
  // 上传成功后的处理
  console.log('上传成功', response.data);
})
.catch(function(error) {
  // 上传失败后的处理
  console.error('上传失败', error);
});
复制代码

 

posted on   空明流光  阅读(1104)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示