axios实现下载功能,服务器之间进行文件传输

本文介绍了如何使用axios在前端实现文件下载功能,涉及跨域问题和用户信息传递。通过oneServer作为中转,处理与fileServer之间的文件传输。讨论了三种不同的解决方案,最终选择了通过JavaWeb项目提供文件下载接口,实现信息流的高效传输。同时,提供了前端axios请求的代码示例和oneServer的实现思路。
摘要由CSDN通过智能技术生成

  • 文章是个人知识点整理总结,如有错误和不足之处欢迎指正。
  • 如有疑问、或希望与笔者探讨技术问题(包括但不限于本章内容),欢迎添加笔者微信(o815441)。请备注“探讨技术问题”。欢迎交流、一起进步。
    在这里插入图片描述

需求描述:

需求其实很简单就是文件下载。

前端以下简称为:client
后端服务器简称:oneServer
文件所在服务器简称:fileServer

解决方案

  1. 运用jcifs包中的SmbFile方法,oneServer只需要知道fileServer的用户名密码,就可以直接访问到fileServer中的文件。
    SmbFile file = new SmbFile(“smb://guest:123@10.1.88.3/uplo/test.txt”);
    此方法详细实现可以百度哈。

    没采用该方案的原因:

    • 因为我们公司的服务器密码是时常更新的,每次都到服务器密码系统申请才能登录。
    • 这种方法会存在一定的安全问题。
  2. 将fileServer做成FTP服务器,这样oneServer访问fileServer就也很方便。

    没采用该方案的原因:

    • 公司已经有文件服务器了,只是我们项目特殊,没有接入而已
    • 由于我之前没有做过FTP服务器,怕耗时过长,影响项目进度。
    • 即使做出了FTP服务器,后续架构评审也会非常耗时。
  3. 写一个JavaWeb项目到fileServer,让其提供文件下载接口,oneServer通过请求该接口下载文件并发送给client。

    采用该方案的原因

    • 无需公司架构评审。只需要写一个javaWeb程序提供服务即可。
    • 只需要操作流,fileServer读取文件信息流传送给oneServer,oneServer直接把流传输给前端,只需要考虑信息流的高效即可。

以上这三种方案都是可以实现的,肯定不只局限于这三种方案。才疏学浅,只能想到这三种,有

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值