如何使用 window.open() 下载文件: 在本页面打开并防止浏览器拦截

摘要:
从接口请求返回的内容有两种类型:直接返回文件内容、返回url和使用窗口。open()直接打开请求地址或返回的url,然后将请求地址或所返回的url直接分配给窗口的href1。直接返回文件内容:打开请求api地址downPkg(){letmywin=window.open('',mywin.location.href=apiPath;}2。返回url时:

下载文件时,接口请求返回内容一般有两种: 直接返回文件内容,返回一个url

用window.open()直接打开请求地址或者返回的url,可能会因为跨域问题导致浏览器拦截

解决办法是:在请求,打开一个窗口,然后将请求地址或者返回的url直接赋值给该窗口的href

1. 直接返回文件内容: 打开请求api地址

 downPkg() {
      let mywin = window.open('','_self'); 
    mywin.location.href = apiPath;
 }

2. 返回url时:打开返回的url

    downPkg() {
      var mywin = window.open('','_self');  //注意一定要在请求前操作此步
      this.$server.getPackage_async().then(res => {  //这里是自己封装的ajax方法
        if (res.result) {
          mywin.location.href = res.data;
        }
      });
    }

免责声明:文章转载自《如何使用 window.open() 下载文件: 在本页面打开并防止浏览器拦截》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Sqlite可视化工具sqliteman安装(转)secureCRT 同时向多个窗口发送命令下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Bing Maps进阶系列三:使用地图图像服务(ImageryService)

  地图图像服务(ImageryService)提供了根据地理位置(经度和纬度)坐标和地图的缩放级别解析出对应于地图图片系统的完整地图数据元数据,包括图片映射地址、图片大小等一系列详细参数。通过该服务的服务接口也可以反向实现通过指定地理位置坐标、地图缩放级别和图片大小(高度和宽度)来生成不同的地图图片。   一、添加ImageryService的Web服务引...

[转]JAVA读取外部资源的方法

在java代码中经常有读取外部资源的要求:如配置文件等等,通常会把配置文件放在classpath下或者在web项目中放在web-inf下. 1.从当前的工作目录中读取: try { BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream("wkdi...

My97日历控件常用功能记录

My97相信大家都不陌生,应该是我所见过的最强大的一个日历控件了,最近的项目中也比较多地用到了此控件,而且项目中经常会有不同时间范围的需求,在此列出一些比较常用的日期范围格式的设置,尽管在My97的官方文档中有很详细的介绍,正是因为很详细所以查找起来不是很方便。 1 可以选择任何日期 <input id="txtDate" class="Wdate"...

Facebook Api 使用(PHP版)

如果想通过Facebook登录到你的网站,Facebook站外API可以实现你想要的,如下介绍实际使用. (我目前没在网上找到中文的更详细的介绍了,呵呵.) (提示:Facebook不支持取得朋友的邮件地址,如果需求是这个,别在浪费功夫了) 注册Facebook Key http://www.facebook.com/developers/apps.php...

JS window.open()属性

一. Window 对象 Window 对象是 JavaScript 层级中的顶层对象。 Window 对象代表一个浏览器窗体或一个框架。 Window 对象会在 <body> 或 <frameset> 每次出现时被自己主动创建。 二. open() 方法用于打开一个新的浏览器窗体或查找一个已命名的窗体。 三. window.op...

功能型:js获取所有的input框元素 根据键盘上下方向键给某个input框加焦点事件

键盘事件监听 @keyup.native @keyup.native="tdItem.onKeyUp($event, trItem, trIndex)"                (item , row , index)     .native在父组件中给子组件绑定一个原生的事件,就将子组件变成了普通的HTML标签   // 获取所有input...