• 页面下载文件方法,post与get


    handleExport(){
      const url='/api/admin/gateLog/export';
      const downloadHelper = $('<iframe style="display:none;" id="downloadHelper"></iframe>').appendTo('body')[0];
      const doc = downloadHelper.contentWindow.document;
      if (doc) {
        doc.open();
        doc.write('');//微软为doc.clear()有时会出bug
        doc.writeln("<html><body><form id='downloadForm' name='downloadForm' method='post' action='"+ url+"'>");
        const queryParam = this.listQuery;
        for(let key in queryParam){
        doc.writeln("<input type='hidden' name='"+key+"' value='"+queryParam[key]+"'>");
        }
        doc.writeln('</form></body></html>');
        doc.close();
        const form = doc.forms[0];
        if (form) {
          form.submit();
        }
      }
    }
    // form-data方式提交数据进行下载
    // $tg表示整个当前页面的this.
    function uploadFileFormData($tg,rspUrl) {
      MessageBox.confirm('是否对当前搜索条件下的数据进行导出操作?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        confirmButtonClass: 'importantCls roundDialog',
        cancelButtonClass: 'roundDialog',
        type: 'warning'
      }).then(() => {
        const params = Object.keys($tg.listQuery).map(key => {
          if($tg.listQuery[key] && key != 'page' && key != 'limit') {
            return encodeURIComponent(key) + "=" + encodeURIComponent($tg.listQuery[key]);
          }
        }).join("&");
        const url = rspUrl+'?token=' + getToken() + "&" + params;
        const $form = $("<form id='exportData' class='hidden' method='POST' action='" + url + "'></form>");
        $("body").append($form);
        $form.submit();
      })
    }
    根据url直接下载,模拟ifream下载
    exportRouter() {
        this.$confirm('是否导出所有路线?', '提示', {type: 'warning'}).then(() => {
            const url = 'http://xxx.xxx/xxx'
            var iframe = document.createElement("iframe");
            iframe.src = url
            iframe.style.display = "none";
            document.body.appendChild(iframe);
            window.URL.revokeObjectURL(url); // 释放掉blob对象
        })
    }
  • 相关阅读:
    解决spring整合quartz,tomcat关闭后,quartz还在运行
    注解 @Resource
    spring 跟 诠释及区别
    This is usually caused by using Struts tags without the associated filter.
    离开中心村进国企——北漂18年(21)
    Android开源项目分类汇总
    AndroidManifest.xml文件详解(service)
    Android相关属性的介绍:android:exported
    Android:关于声明文件中android:process属性说明
    关于 android receiver
  • 原文地址:https://www.cnblogs.com/xiaoer-heidou/p/14764834.html
Copyright © 2020-2023  润新知