【uniapp】上传文件流图片

需求:从接口下载指定文件,把这个文件再上传到后端。

背景:文件的上传、下载接口都是现有的,原本在pc端下载使用的responseType为blob,在uniapp不支持。如果按照原本的方式请求接口,返回的值会是字符串,不是blob

解决:

使用uni.downloadFile下载文件,获得文件的临时路径,再用uni.uploadFile上传临时路径文件,这样就不需要花里胡哨把文件格式转来转去了。

示例代码:

javascript 复制代码
uni.downloadFile({
	url: 'url', //现有的下载文件接口路径
	header: {
		Authorization: 'token', //鉴权token,也可添加其他项目需要的请求头
	},
	success:(downloadRes)=>{
		const tempFilePath = downloadRes.tempFilePath; //关键!!获取到了下载文件的临时路径
		uni.uploadFile({
			url: 'url', //现有的上传文件接口路径
			filePath: tempFilePath,
			name: "file", //formData中文件的键名
			header: {
				Authorization: 'token', //鉴权token,也可添加其他项目需要的请求头
			},
			formData: { //此处添加formData里其他的参数
	            modelName: "repairProcess-initiate",
	            relaId: id,
	            appName: "pvow"
             },
             success: (uploadFileRes) => {
               console.log('success',uploadFileRes);
             },
             fail: (e) => {
               console.log("e",e);
             },
           });
         }
       })
相关推荐
Jerry说前后端1 分钟前
Android 移动端 UI 设计:前端常用设计原则总结
android·前端·ui
熊猫钓鱼8 分钟前
基于Trae CN与TrendsHub快速实现的热点百事通
前端·trae
LIUENG15 分钟前
Vue3 响应式原理
前端·vue.js
讨厌吃蛋黄酥18 分钟前
前端居中九种方式血泪史:面试官最爱问的送命题,我一次性整明白!
前端·css
龙在天21 分钟前
🤩 用Babel自动埋点,原来这么简单!
前端
Hierifer22 分钟前
跨端实现之网络库拦截
前端
随笔记24 分钟前
react-router里的两种路由方式有什么不同
前端·react.js
前端李二牛24 分钟前
异步任务并发控制
前端·javascript
你也向往长安城吗1 小时前
推荐一个三维导航库:three-pathfinding-3d
javascript·算法
imLix1 小时前
RunLoop 实现原理
前端·ios