`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 官方文档

相关推荐
star_11125 分钟前
Jenkins+nginx部署前端vue项目
前端·vue.js·jenkins
JIngJaneIL13 分钟前
农产品电商|基于SprinBoot+vue的农产品电商系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·毕设·农产品电商系统
c***727419 分钟前
SpringBoot + vue 管理系统
vue.js·spring boot·后端
JIngJaneIL23 分钟前
书店销售|书屋|基于SprinBoot+vue书店销售管理设计与实现(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·毕设·书店销售管理设计与实现
一 乐35 分钟前
农产品销售|农产品供销|基于SprinBoot+vue的农产品供销系统(源码+数据库+文档)
java·前端·javascript·数据库·vue.js·spring boot
一 乐1 小时前
助农服务系统|基于SprinBoot+vue的助农服务系统(源码+数据库+文档)
前端·数据库·vue.js
by__csdn1 小时前
Vue 2 与 Vue 3:深度解析与对比
前端·javascript·vue.js·typescript·vue·css3·html5
小二·1 小时前
DevUI 和 MateChat:2025 年,我们是怎么把前端开发变轻松的
开发语言·javascript·vue.js
一 乐2 小时前
游戏账号交易|基于Springboot+vue的游戏账号交易系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端·游戏
shaohaoyongchuang2 小时前
vue_03路由
前端·javascript·vue.js