`uni.uploadFile` 是 uni-app 框架提供的一个用于上传文件的 API。

使用说明

uni.uploadFile 用于将本地资源上传到开发者服务器。如页面通过 uni.chooseImage 等接口获取到一个本地资源的临时文件路径后,可以通过 uni.uploadFile 将文件上传到指定服务器。

API 结构

uni.uploadFile 的基本结构如下:

javascript 复制代码
uni.uploadFile({
  url: 'https://example.com/upload', // 开发者服务器地址
  filePath: '', // 要上传文件资源的路径
  name: '', // 必填,文件对应的 key
  header: {
    // 设置请求的 header
  },
  formData: {
    // HTTP 请求中其他额外的 form data
  },
  success: function (uploadFileRes) {
    // 上传成功的处理逻辑
  },
  fail: function (err) {
    // 上传失败的处理逻辑
  },
  complete: function () {
    // 上传完成的处理逻辑(无论成功或失败都会执行)
  }
});

示例代码

以下是一个 uni.uploadFile 的示例代码:

javascript 复制代码
uni.chooseImage({
  success: function (chooseImageRes) {
    const tempFilePaths = chooseImageRes.tempFilePaths;
    uni.uploadFile({
      url: 'https://example.com/upload', // 仅为示例,并非真实的接口地址
      filePath: tempFilePaths[0],
      name: 'file',
      formData: {
        'user': 'test'
      },
      success: (uploadFileRes) => {
        console.log(uploadFileRes.data);
      },
      fail: (err) => {
        console.error('上传失败:', err);
      },
      complete: () => {
        // 无论成功或失败都会执行
        console.log('上传完成');
      }
    });
  }
});

在这个示例中,首先使用 uni.chooseImage 选择图片文件,然后使用 uni.uploadFile 方法将选中的图片上传到服务器。name 参数为文件对应的 key,服务器端可通过这个 key 接收文件。formData 可以设置与文件一起发送的其他数据。

注意:上传的文件必须是用户选择的,或者应用生成的,详细规则请参考各个平台的文件系统。

更多详情和参数配置可以查看 uni-app 官方文档

相关推荐
一 乐18 小时前
汽车租赁|基于SprinBoot+vue的汽车租赁管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·汽车·论文·毕设·汽车租赁管理系统
MaCa .BaKa21 小时前
55-宠物爱心救助领养系统-宠物救助领养系统
java·vue.js·tomcat·maven·springboot·宠物救助领养系统
海鸥两三1 天前
基于 Vue 3 + 高德地图的网格规划系统实战(有源码)
前端·javascript·vue.js
专注VB编程开发20年1 天前
我制作excel工作簿的选项卡,发给deep seek, 昨天修改了一天
前端·vue.js·excel
qq_420362031 天前
前端国际化方案
前端·javascript·vue.js·国际化·reactjs
香香爱编程1 天前
vue3自定义顶部弹窗
前端·javascript·vue.js
蜡台1 天前
Vue Echart 的 **高阶组件化** 封装思路
前端·javascript·vue.js·echarts
xuankuxiaoyao1 天前
vue.js 路由第二篇
前端·javascript·vue.js
一 乐1 天前
图书电子商务网站系统|基于SprinBoot+vue图书电子商务网站设计与实现(源码+数据库+文档)
java·前端·数据库·vue.js·论文·毕设·图书电子商务网站系统
吃乔巴的糖2 天前
Vue 3 打印模板设计器 (print-canvas-designer)
前端·vue.js