zoukankan      html  css  js  c++  java
  • ajax请求二进制数据

     
      var url = '';
      var xhr = new XMLHttpRequest();
      xhr.open('GET', url, true);    // 也可以使用POST方式,根据接口
      xhr.responseType = "blob"// 返回类型blob
      // 定义请求完成的处理函数,请求前也可以增加加载框/禁用下载按钮逻辑
      xhr.onload = function () {
        // 请求完成
        if (this.status === 200) {
          // 返回200
          var blob = this.response;
          var reader = new FileReader();
          reader.readAsDataURL(blob);  // 转换为base64,可以直接放入a表情href
          reader.onload = function (e) {
            // 转换完成,创建一个a标签用于下载
            var a = document.createElement('a');
            a.download = 'data.xlsx';
            a.href = e.target.result;
            $("body").append(a);  // 修复firefox中无法触发click
            a.click();
            $(a).remove();
          }
        }
      };
      // 发送ajax请求
      xhr.send()
     
  • 相关阅读:
    fiddler 使用
    IO多路复用
    scrapy下载 大文件处理

    session见解
    自定义分页
    COOKIE
    ORM之老师管理
    ORM之学生管理
    ORM之班级管理
  • 原文地址:https://www.cnblogs.com/silences/p/8385114.html
Copyright © 2011-2022 走看看