uniapp之plus.downloader.createDownload下载文件传参

uniapp之plus.downloader.createDownload下载文件传参

		let pathurl = config.uni_app_web_api_url + url;
		let tocken = storage.get("tocken");
		let header = {}
		if (tocken != null) {
			header = {
				"Authorization": 'Bearer ' + tocken,
				'Content-Type': 'application/x-www-form-urlencoded',
				Accept: '*/*',
			};
		}
		console.log(pathurl)
		let dtask = plus.downloader.createDownload(pathurl, {
			method: 'POST',
			filename: "file://storage/" + name + ".pdf",
			timeout: 0,
			retry: 3,
			header,
			data: "ids="+JSON.stringify(data.ids)+"&reportType="+data.reportType+"&responseType=blob&ssdGeomList="+JSON.stringify(data.ssdGeomList),
		}, (d, status) => {
			console.log(d)
			console.log(status)
			downState = false
			//d为下载的文件对象
			if (status == 200) {
				uni.hideLoading();
				//下载成功,d.filename是文件在保存在本地的相对路径,使用下面的API可转为平台绝对路径
				let fileSaveUrl = plus.io.convertLocalFileSystemURL(d.filename);
				setTimeout(() => {
					plus.runtime.openFile(d.filename); //选择软件打开文件
				}, 1500)
			} else {
				//下载失败
				plus.downloader.clear(); //清除下载任务
				uni.hideLoading();
				uni.showToast({
					icon: 'none',
					mask: true,
					title: '下载失败,请稍后重试',
				});
			}
		})

注意:
1.data 参数将会被转换为fromdata传给后端
2.data 字段为字符串格式,数据结构和get请求一样,例如: "a=1&b=2"
3.api链接:https://www.bookstack.cn/read/html5plus/a6f8d226fc306bb0.md

 

...钻研不易,转载请注明出处。

 

posted @ 2026-04-01 10:42  莫小龙  阅读(40)  评论(0)    收藏  举报