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

相关推荐
lethelyh5 小时前
Vue day1
前端·javascript·vue.js
利刃大大5 小时前
【Vue】组件化 && 组件的注册 && App.vue
前端·javascript·vue.js
我是伪码农6 小时前
Vue 1.26
前端·javascript·vue.js
你脸上有BUG8 小时前
【工程化】记给ant-design-vue打补丁的示例
前端·javascript·vue.js·补丁·ant-design-vue
你这个代码我看不懂9 小时前
Vue子父组件.sync
javascript·vue.js·ecmascript
⑩-10 小时前
Vue框架学习
前端·vue.js·学习
xkxnq10 小时前
第三阶段:Vue 路由与状态管理(第 45 天)(路由与状态管理实战:开发一个带登录权限的单页应用)
前端·javascript·vue.js
Irene199110 小时前
Vue 3 中的具名插槽仍然完全支持,Vue 2 的旧语法 Vue 3 中已废弃
vue.js·slot
Irene199111 小时前
v-model 在 Vue2 和 Vue3 中的实现对比或异同
vue.js
心.c11 小时前
Vue3+Node.js实现文件上传并发控制与安全防线 进阶篇
前端·javascript·vue.js·安全·node.js