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


    下载文件时,接口请求返回内容一般有两种: 直接返回文件内容,返回一个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;
            }
          });
        }
  • 相关阅读:
    石子合并之一
    最长公共子序列
    最长上升子序列
    剑圣的逃跑
    方格取数
    数字三角形
    Omkar and Last Class of Math
    IDEA中对代码进行测试
    Spark(一)【spark-3.0安装和入门】
    HTTP请求 Java API
  • 原文地址:https://www.cnblogs.com/XHappyness/p/8885147.html
Copyright © 2020-2023  润新知