vue 引入pako解压后台压缩的数据

1、安装

cnpm i pako --save

2、使用

import pako from 'pako' 
console.log(res.data,'后台返回加密后数据')
let info = pako.ungzip(res.data, { to: 'string' }); //解压成字符串
let result  = eval(info);//字符串转换成对象
// console.log(result,'解压结果')

3、本地可以,线上报错(后台返回压缩后的字符串)

unknown compression method

4、其他方法(后端返回流)

 let res = await  axios({
                method: "post",
                baseURL: window.ROOT,
                withCredentials: true,
                responseType: "blob",
                timeout: 500000,
                url: '/api/bigDataSearch/searchData',
                headers: {
                    'Access-Control-Allow-Origin': '*',
                    'Content-Type': 'application/json',
                    token: store.getters.token ? getToken() : null
                },
                data: params
            })
      this.loading = false;

      // console.log('后台返回加密后数据',res.data)
      let reader = new FileReader();
				reader.readAsArrayBuffer(res.data, "utf-8");
				reader.onload =() =>{
					// 对数据进行解压
					let arr = JSON.parse(
						pako.inflate(reader.result, {
							to: "string"
						})
					);
          let result = arr
          if(result.code!==1) return this.$message.error(result.message)
           this.resData= result.data;
            if(result.data.length>1){
              // this.tableData=result[1];
              this.columnsData=result.data[0];
              this.tableData=result.data.filter((x,index)=>index!=0);
              console.log(this.tableData,'8888')
            }else{
              this.columnsData=result.data[0];
              this.tableData=[]
              console.log(this.columnsData,'999')
            }
				};

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值