JavaScript~文件下载的几种方式-创新互联

1.通过a标签的方式来下载

创新互联从2013年开始,先为金安等服务建站,金安等地企业,进行企业商务咨询服务。为金安企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

2.通过提交form表单的方式


var $form = $('');
angular.forEach(d,function(v,k){
    v = JSON.stringify(v);
    var $input = $('');
    $input.attr('value',v);
    $form.append($input);
});
$element.append($form);
$form.submit();
$form.remove();

3.通过http的请求拿到文件流的方式

$http({
    url : $scope.url,
    method : 'post',
    data : $scope.form.formdata,
    responseType : 'arraybuffer',
}).then(function(d){
    var data = d.data;
        var blob = new Blob([data], {type: "text/plain"});
       //var blob = new Blob([data], {type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});//xlsx
       //var blob = new Blob([data], {type: "application/vnd.ms-excel"});//xls
        var downloadTitle = '';
        if(d.headers('content-disposition').indexOf('filename') != -1){
            downloadTitle = d.headers('content-disposition').split(';')[1].split('=')[1];
            downloadTitle = decodeURI(downloadTitle);
        }
        if(typeof window.navigator.msSaveBlob !== 'undefined'){
            window.navigator.msSaveBlob(blob, downloadTitle);
        }else{
            var objectUrl = URL.createObjectURL(blob);
            var aForExcel = $("").attr("href",objectUrl);
            $("body").append(aForExcel);
            $(".forExcel").click();
            aForExcel.remove();
        }
});

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章名称:JavaScript~文件下载的几种方式-创新互联
分享URL:http://scjbc.cn/article/cdgehd.html

其他资讯