uniapp uni.chooseImage+uni.uploadFile使用方法与详解

uni.chooseImage+uni.uploadFile使用方法与详解

一、uni.chooseImage

实现从本地相册选择图片或使用相机拍照,从手机选择图片后会生成一个临时本地路径(该路径只在本次启动期间可以正常使用)

javascript 复制代码
uni.chooseImage({
	count: 6, //选择可上传图片数量,默认9
	sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
	sourceType: ['album'], //从相册选择
	success: function (res) {
		console.log(JSON.stringify(res.tempFilePaths));
	}
});

uniapp官网参数说明

success返回参数说明

二、uni.uploadFile

由于uni.chooseImage生成的路径是一个临时路径,所以需要通过uploadFile将该图片上传到后端,并由后端生成一个服务器路径使其可以随时随地(永久、非本地)访问。

注:一定要让后端将接口method写为POST

javascript 复制代码
uni.chooseImage({
	success: (chooseImageRes) => {
		const tempFilePaths = chooseImageRes.tempFilePaths;
		uni.uploadFile({
			url: 'https://www.example.com/upload', //后端接口地址
			filePath: tempFilePaths[0],
			name: 'file', //后端定义的key
			formData: {
				'user': 'test'
			},
			success: (uploadFileRes) => {
				console.log(uploadFileRes.data);
			}
		});
	}
});

uniapp官网参数说明

success返回数据说明

最后要将后端返回给的服务器地址拼接上域名才能真正访问图片

相关推荐
wind100328 分钟前
Qt5Widgets.dll 缺失报错|游戏软件无法启动完整修复教程
开发语言·qt·游戏·电脑
Su米苏10 分钟前
针对使用@vue-office 出现的包异常找不到问题
前端·javascript·vue.js
坚定信念,勇往无前14 分钟前
electron打包mac ,apple m4出错:ffprobe是x86,不是arm64
前端·javascript·electron
我叫张土豆18 分钟前
在 OpenClaw Java 对话框输入一句话后,系统是如何运行的?
java·开发语言·人工智能
牛油果子哥q28 分钟前
C++模板万字深度精讲:函数/类模板特化、全特化与偏特化、SFINAE机制、类型萃取、模板元编程入门、工程实战落地
开发语言·c++·面试
专业抄代码选手29 分钟前
01|从手写 DOM 到虚拟 DOM:把 UI 从“操作”变成“描述”
前端·javascript·react.js
专业抄代码选手40 分钟前
03|React 为什么需要协调:比较两棵树,而不是重建页面
前端·javascript·react.js
神仙别闹41 分钟前
基于C++ 实现 L 系统分形树
开发语言·c++
君顾142 分钟前
AI智能商城实战指南:从架构设计到部署落地的完整技术方案
java·开发语言·多商户
王霸天43 分钟前
GLB 文件太大怎么办?我把它从 47MB 压到 8MB,全程没碰命令行
前端·javascript·程序员