使用说明
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 官方文档。