const onDownFile = (url, fileName) => {
if (url.indexOf('https') == -1) {
url = url.replace('http', 'https')
}
var xml = new XMLHttpRequest()
xml.open('GET', url, true)
xml.responseType = 'blob'
const msgMap = {
401: '未授权',
403: '禁止访问',
404: '未找到资源',
500: '服务器发生错误'
}
xml.onreadystatechange = () => {
if (xml.readyState === 4) {
if (xml.status === 200) {
const _url = URL.createObjectURL(xml.response);
var a = document.createElement('a');
a.href = _url
a.download = fileName;
a.style.display = 'none'; //隐藏a标签 直接调用a标签的点击事件
document.body.appendChild(a);
a.click();
URL.revokeObjectURL(_url);
alert('下载完成,请在本地文件夹查看!')
} else {
alert(msgMap[xml.status])
}
}
}
xml.onerror = function () {
alert('下载失败,请稍后再试!')
}
xml.send()
alert('已经成功添加到下载列表,请稍等!')
}
js XMLHttpRequest 文档下载
最新推荐文章于 2024-07-08 16:22:29 发布
本文介绍了一个JavaScript函数constonDownFile,用于处理HTTP请求下载文件。它检查URL是否安全,管理HTTP状态码,并在下载成功或失败时给出提示。
摘要由CSDN通过智能技术生成