从FTP服务器下载图片,并打成压缩包返回前端下载

该博客介绍了一个前端批量下载操作的处理方法,当用户选择数据后,调用后端API '/packingRecord/packageDownload',通过Java后端利用FTPClient从服务器下载图片,然后打包成ZIP文件返回给前端,供用户下载。后端代码中,`DownloadZIPUtils`类实现了FTP文件下载、文件压缩和文件删除的功能。
摘要由CSDN通过智能技术生成

前端代码:

/**批量下载操作 */
    handleDownload() {
      if(this.chooseSelections.length ==0){
        this.$message.warning("请选择要下载打包的数据!")
        return false;
      }
      var that = this;
      this.$confirm("确认下载打包选中数据吗?", "提示信息", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          var chooseList = this.chooseSelections;
          var ids = "";
          chooseList.forEach(item => {
            ids = ids + item.id + ",";
          })
          const loading = this.$loading({
            lock: true,
            text: "批量下载打包中",
            spinner: "el-icon-loading",
            background: "rgba(0, 0, 0, 0.7)",
          });
          packageDownload(ids).then(res => {
            loading.close();
            this.fileHandle(res,`批量装箱照片_${new Date().getTime()}.zip`)
          })
        })
        .catch(() => {});
    },
 ===============================================================================
 //装箱照片批量下载打包
export function packageDownload(ids) {
  return request({
    url: '/packingRecord/packageDownload/'+ids,
    method: 'get',
    responseType: 'blob',
    headers:{ 'Content-Type': 'application/json; application/octet-stream'},
  })
}

后端代码:

package com.ruoyi.web.utils;

import com.ruoyi.business.domain.entity.BusPackingRecord;
import org.apache.commons.io.FileU

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值