【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);
             },
           });
         }
       })
相关推荐
哆啦A梦15881 小时前
[前台小程序] 01 项目初始化
前端·vue.js·uni-app
智码看视界2 小时前
老梁聊全栈系列:(阶段一)架构思维与全局观
java·javascript·架构
小周同学@3 小时前
谈谈对this的理解
开发语言·前端·javascript
Wiktok3 小时前
Pyside6加载本地html文件并实现与Javascript进行通信
前端·javascript·html·pyside6
一只小风华~4 小时前
Vue:条件渲染 (Conditional Rendering)
前端·javascript·vue.js·typescript·前端框架
柯南二号4 小时前
【大前端】前端生成二维码
前端·二维码
2501_915918414 小时前
HTTPS 端口号详解 443 端口作用、iOS 抓包方法、常见 HTTPS 抓包工具与网络调试实践
android·网络·ios·小程序·https·uni-app·iphone
程序员码歌4 小时前
明年35岁了,如何破局?说说心里话
android·前端·后端
博客zhu虎康5 小时前
React Hooks 报错?一招解决useState问题
前端·javascript·react.js
灰海5 小时前
vue中通过heatmap.js实现热力图(多个热力点)热区展示(带鼠标移入弹窗)
前端·javascript·vue.js·heatmap·heatmapjs