uni.uploadFile()
将本地资源上传到开发者服务器
客户端发起一个post请求
content-type
multipart/form-data
通过uni.chooseImage获取一个本地资源的临时文件路径后
将本地资源上传到指定服务器
url String 是 开发者服务器 url
files Aarry 否 需要上传的文件列表
filePath String 是 要上传文件资源的路径
name String 是 文件对应的key
header Object 否 HTTP 请求 Header, header 中不能设置 Referer
uploadTask 对象的方法列表
onProgressUpdate callback 监听上传进度变化
abort 中断上传任务
onProgressUpdate 返回参数说明
实战页面
选择照片
data:{
percent:0,
loading:false,
disabled:false
},
upload : function(){
_self = this;
uni.chooseImage({
count: 1,
sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
sourceType: ['album'], //从相册选择
success: function (res) {
const tempFilePaths = res.tempFilePaths;
const uploadTask = uni.uploadFile({
url : 'https://demo.hcoder.net/index.php?c=uperTest',
filePath: tempFilePaths[0],
name: 'file',
formData: {
'user': 'test'
},
success: function (uploadFileRes) {
console.log(uploadFileRes.data);
}
});
uploadTask.onProgressUpdate(function (res) {
_self.percent = res.progress;
console.log('上传进度' + res.progress);
console.log('已经上传的数据长度' + res.totalBytesSent);
console.log('预期需要上传的数据总长度' + res.totalBytesExpectedToSend);
});
},
error : function(e){
console.log(e);
}
});
}
},
php
getExeName($_FILES['file']['name']);
if($exename != 'png' && $exename != 'jpg' && $exename != 'gif'){
exit('不允许的扩展名');
}
$imageSavePath = uniqid().'.'.$exename;
if(move_uploaded_file($_FILES['file']['tmp_name'], $imageSavePath)){
echo $imageSavePath;
}
}
}
public function getExeName($fileName){
$pathinfo = pathinfo($fileName);
return strtolower($pathinfo['extension']);
}
}
uni.chooseImage(OBJECT) 从本地相册选择图片或使用相机拍照
文件的临时路径,在应用本次启动期间可以正常使用,如需持久保存,需在主动调用 uni.saveFile,在应用下次启动时才能访问得到。
tempFilePaths
StringArray 图片的本地文件路径列表
tempFiles
ObjectArray 图片的本地文件列表,每一项是一个 File 对象
File 对象结构如下
path String 本地文件路径
size Number 本地文件大小,单位:B
uni.chooseImage({
count: 6, // 默认9
sizeType: ['original', 'compressed'], // 原图,压缩图
sourceType: ['album'], // 从相册选择
success: function(res) {
console.log(JSON.stringify(res.tempFilePaths));
}
});
uni.previewImage();
预览图片
current 当前显示图片的链接
urls 需要预览的图片链接列表
uni.chooseImage({
count: 6,
sizeType: ['original','compressed'],
sourceType: ['album'],
success: function(res) {
// 预览图片
uni.previewImage({
urls: res.tempFilePaths
});
}
uni.getImageInfo()
获取图片信息
orientation 参数说明
枚举值 说明
up 默认
down 180度旋转
left 逆时针旋转90度
right 顺时针旋转90度
up-mirrored 同up,但水平翻转
down-mirrored 同down,但水平翻转
left-mirrored 同left,但垂直翻转
right-mirrored 同right,但垂直翻转
uni.chooseImage({
count: 1,
sourceType: ['album'],
success: function (res) {
uni.getImageInfo({
src: res.tempFilePaths[0],
success: function (image) {
console.log(image.width);
console.log(image.height);
}
});
}
});
uni.saveImageToPhotosAlbum(OBJECT)
保存图片到系统相册
filePath 图片文件路径
uni.chooseImage({
count: 1,
sourceType: ['camera'],
success: function (res) {
uni.saveImageToPhotosAlbum({
filePath: res.tempFilePaths[0],
success: function () {
console.log('save success');
}
});
}
});
若本号内容有做得不到位的地方(比如:涉及版权或其他问题),请及时联系我们进行整改即可,会在第一时间进行处理。
审核编辑 黄昊宇
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
Linux
+关注
关注
88文章
11854浏览量
219822 -
数据库
+关注
关注
7文章
4092浏览量
68676 -
python
+关注
关注
59文章
4892浏览量
90416 -
NODE.JS
+关注
关注
1文章
49浏览量
34036
发布评论请先 登录
相关推荐
热点推荐
鸿蒙开发实现图片上传(上传用户头像)
})
})
2. 拷贝图片到缓存目录
当前上传应用文件功能,仅支持上传应用缓存文件路径(cacheDir)下的文件。
使用上传下载模块,需声明权限:ohos.permission
发表于 05-24 23:09
DCloud崔红保:uni-app和HBuilder背后的男人
MUI,国内⾸个接近原⽣App体验的⾼性能前端库,github star数过万;流应⽤,国内⼩程序应用形态的最早原型;HBuilder,拥有数百万前端开...
uni-app事件以及事件绑定
事件修饰符stop的使用会阻止冒泡,但是同时绑定了一个非冒泡的事件,会导致该元素上的catchEventName失效!
HarmonyOS应用开发—图片文件上传错误交流
在开发过程中,遇到一个上传文件时的错误,特地在此记录一下。 相关代码: /** 图片上传* */public static void sendMultipart(String urlAddress
知名开源前端框架uni-app包含热更新代码,谷歌“封杀”
近日,程序员发帖称自己用开源框架 uni-app 开发的 App 被 Google Play 下架,原因是 uni-app 自带的 SDK 包含违反 Google Play 政策的内容 —— 包括广告代码,以及下载第三方
产品图片上传API接口
在电商平台、内容管理系统或移动应用中,产品图片上传API接口是核心功能之一。它允许用户或第三方应用通过HTTP请求将图片文件上传到服务器,实现产品图像的快速添加和管理。本文将逐步介
商品图片批量上传接口设计与实现
? 在电商平台或内容管理系统中,商品图片的高效管理是核心需求之一。批量上传接口允许用户一次性上传多张图片,显著提升操作效率。本文将逐步介绍如何设计并实现一个可靠的商品
uni-app图片上传实战
评论