vue 通过axios下载后端接口文件流pdf文件

关于下载在页面直接写url地址也是可以下载的,

window.location.href=“text.pdf”;

但后端接口有的时候要求传给我们前端的是文件流格式,前端处理方式如下

              that.$http({
                      method:"get",
                      url:api.exportContract+'/'+agreementId+'/'+docNumber,
                      headers:headers('application/x-download'),
                      responseType: 'blob',
                  }).then(function(res){
                    let url = window.URL.createObjectURL(new Blob([res.data]));  // new Blob([data])用来创建URL的file对象或者blob对象
                          let link = document.createElement('a');
                          link.style.display = 'none';
                          link.href = url;
                               link.download= docNumber+'.pdf'; //docNumber 动态文件名
                          document.body.appendChild(link);
                          link.click();
                  });

你可能感兴趣的:(vue)