美文网首页让前端飞
前端怎么解析后台返回的zip包之后弹出下载框

前端怎么解析后台返回的zip包之后弹出下载框

作者: 废柴码农 | 来源:发表于2019-01-09 20:54 被阅读3次

    最简单方法的思路整理:

    1.如果后台需要的是post请求需要让后台将接口改成get请求

    2.前端直接通过a标签直接访问请求的路径

    3.请求的时候写上要传递过去的参数

    刚开始请求的时候,我是通过axios将后台返回的res给打印出来了,结果发现不行啊,全乱码了,错误代码如下

    //错误代码
     handleExport= () => {
        axios
        .post("/safemgmt/api/custom/downloadFaceUrls",{ids:this.state.selectedRowIds})
        .then(res => {
            console.log(res);
        }) 
        }
    
    因为后台返回给的是x-msdownload格式的,也就是说请求的时候就已经生成一个zip文件了,所以直接访问他的服务器的路径就可以

    具体修改代码如下:

    let baseurl="172.16.16.77/safemgmt/api/custom/downloadFaceUrls"
    //这一块要写成你请求的服务器的接口地址,写我的是没用的,因为我请求的是别人本地的服务,他电脑一关闭,就会请求不到 不能用localhost要把它换成具体的ip地址
    <a href={baseurl+`?ids=${this.state.selectedRowIds}`} target="_blank">导出</a>
    //注:我是请求的时候需要给传过去ids参数,所以用es6语法这样写的
    

    相关文章

      网友评论

        本文标题:前端怎么解析后台返回的zip包之后弹出下载框

        本文链接:https://www.haomeiwen.com/subject/kahnrqtx.html