下载附件
down.js
/**
* @url下载地址
* @文件名所需要的文件名称
*/
从" @/utils/auth "导入{ getToken }
从"元素-用户界面"导入{消息}
导出函数下行文件(网址,前置=假){ 0
返回新的承诺((解决,拒绝)=}
const xhr=new XMLHttpRequest()
const URL=进程。环境。vue _ APP _ BASE _ API网址
xhr.open('GET ',URL,true)
xhr。setrequestheader(' Content-Type ',' application/json `)
xhr。setrequestheader(' Authorization ',` ${getToken()} `)
xhr.responseType='blob '
xhr。onload=()={ 0
if(xhr。状态===200){ 0
if(xhr。getresponseheader(' content-disposition '==null){ 0
//说明文件不存在
消息({ 0
消息: '导出失败,
类型: '错误,
工期: 5 * 1000
})
拒绝(新错误('导出失败'))
}
const FIlename=decodeURIComponent(xhr。getresponseheader('内容处理').拆分(' fileName=')[1])
if(窗口。领航员。MsSaveRopenBlob){ 0
领航员。MsSaveBloB(xhr。响应,fileName)
} else {
const body=文档。queryselector(' body ')
const imgurl=window .网址。createobjecturl(xhr。回应)
if(!pre){ 0
const link=文档。创建元素(' a ')
link.download=fileName
link.href=imgurl
link.style.display='none '
body.appendChild(链接)
link.click()
body.removeChild(链接)
窗户网址. revokeObjectURL(链接. href)
消息({ 0
消息: '下载成功!',
键入: '成功,
工期: 5 * 1000
})
解析({ data: ' ',msg: '下载成功!',state: xhr.statusText })
} else {
解析({ data: imgurl,msg: '获取成功,state: xhr.statusText })
}
}
} else {
消息({ 0
message: xhr.statusText,
类型: '错误,
工期: 5 * 1000
})
拒绝(新错误(xhr.statusText))
}
}
xhr.send()
})
}
api.js
导出函数CheckEXcel(id){ 0
返回下文件(
`/项目/投标/CheckExcelId=$ { id } ` 0
)
}
//返回全球资源定位器(统一资源定位符)
静态downloadWithUrl(url:字符串){ 0
const DownLoadURl=this。GetHost()URL;
if(窗口。导航窗口。领航员。mssaveropenblob){ 0
窗户。位置。href=DownLoadURl
} else {
const link=文档。创建元素(' a ');
链接。风格。显示='无';
link.href=downloadUrl
document.body.appendChild(链接);
链接。单击();
document.body.removeChild(链接);
}
}
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/67486.html