【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);
             },
           });
         }
       })
相关推荐
小粉粉hhh26 分钟前
React(二)——dom、组件间通信、useEffect
前端·javascript·react.js
Csvn35 分钟前
🤖 AI 生成前端代码的 5 个典型翻车现场及修复指南
前端
IT_陈寒2 小时前
SpringBoot自动装配坑了我一天,原来问题出在这
前端·人工智能·后端
索西引擎2 小时前
【React】key 属性:协调算法中的元素标识机制与最佳实践
前端·javascript·react.js
只会cv的前端攻城狮3 小时前
动态组件架构设计:从配置到事件驱动全链路解析
前端·vue.js
飞天狗3 小时前
Next.js 16 App Router 实战:服务端组件与流式渲染
前端·next.js
OpenTiny社区3 小时前
TinyEngine 2.11版本发布:AI 进一步融入画布,Vue 工程可一键转DSL
前端·vue.js·github
小雪_Snow3 小时前
JavaScript 中的三种常用事件
开发语言·前端·javascript
Hyyy3 小时前
Electron-Vite是什么,和Vite有什么区别
前端·面试
蓝胖子酱3 小时前
在 Electron 中用 electron-store 实现加密存储与自定义格式文件
前端·javascript·数据库