通过XMLHttpRequest和window.open在浏览器中打开文件流pdf以及下载pdf

1、浏览器预览pdf:

首先通过接口获取文件流数据

下发是源码

var xhr = new XMLHttpRequest();

xhr.open("GET", 'http://www.baidut.com/downloadFile');

xhr.responseType = "blob";

xhr.onload = function(){

if(this.status == 200){

var blob = new Blob([this.response],{type: 'applocation/pdf;chartset=UTF-8'});

var url = window.URL.createObjectURL(blob);

window.open(url, "_blank");

}

};

xhr.send();

当然我这里使用的是原生的,如果可以的也可以使用axios、ajax都是可以的,反正都是通过接口获取文件流进而通过blob不同的类型转换用于浏览器的展示;blob的type有很多,还有图片image/png等等

2、浏览器下载文件:

浏览器下载文件和预览差不多

相关推荐
爱分享的程序员18 分钟前
Node.js 实训专栏规划目录
前端·javascript·node.js
阿迪州25 分钟前
iframe作为微前端方案的几个问题
前端·面试
我就是避雷针小鬼啊27 分钟前
vue2组件库规划
前端
Burt39 分钟前
#🎉 unibest 3.0 发布了!看看都更新了啥好用的功能\~
前端·uni-app
星垂野43 分钟前
JavaScript 执行栈和执行上下文详解
前端·javascript
别叫我1 小时前
Swift串行上传多个图片
前端
风铃喵游1 小时前
核心骨架: 小程序双线程架构
前端·架构
天平1 小时前
使用https-proxy-agent下载墙外资源
前端·javascript