原生js实现文件下载并设置请求头header

原生js实现文件下载并设置请求头header

编程文章jaq1232025-04-21 23:58:2219A+A-

原生js实现文件下载并设置请求头header

const token="自行定义表单令牌";//如果有
/**
* 向指定路径发送下载请求
* @param{String} url 请求路径
*/
function downLoadByUrl(url){
    var xhr = new XMLHttpRequest();
    //GET请求,请求路径url,async(是否异步)
    xhr.open('GET', url, true);
    //设置请求头参数的方式,如果没有可忽略此行代码
    // xhr.setRequestHeader("token", token);
    //设置响应类型为 blob
    xhr.responseType = 'blob';
    //关键部分
    xhr.onload = function (e) {
    //如果请求执行成功
    if (this.status == 200) {
        var blob = this.response;
        var filename = "我是文件名.xxx";//如123.xls
        var a = document.createElement('a');
        blob.type = "application/octet-stream";
        //创键临时url对象
        var url = URL.createObjectURL(blob);
        a.href = url;
        a.download=filename;
        a.click();
        //释放之前创建的URL对象
        window.URL.revokeObjectURL(url);
        }
    };
    //发送请求
    xhr.send();
}
点击这里复制本文地址 以上内容由jaq123整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

苍茫编程网 © All Rights Reserved.  蜀ICP备2024111239号-21