gpt4 book ai didi

java - Web 应用程序处理用户从 SFTP 服务器下载文件的请求的功能

转载 作者:太空宇宙 更新时间:2023-11-04 08:58:47 25 4
gpt4 key购买 nike

在我们的 Java Web 应用程序中,客户希望将一些大文件上传到 SFTP 服务器并直接从那里下载。客户不想使用任何第三方工具,而是希望应用程序本身具有此功能。

文件上传部分已由 JFileUpload 小程序组件和库处理。文件上传后,我可以找出存储文件的确切位置。上传的文件将作为链接显示给用户,用户可以单击该链接进行下载(如 HTTP 或 FTP 文件链接)。

所以我必须决定从 SFTP 服务器下载文件的策略。

一种选择是解析请求,然后连接 SFTP 服务器并通过 HTTP 服务器传输文件。但这里文件将通过 HTTP 而不是 SFTP 下载,而且它无法达到使用 SFTP 的目的。

我能想到的另一个选择是通过小程序,同样是上传。一旦对 SFTP 文件的请求到达 HTTP 服务器,它将启动一个包含小程序的页面,该小程序具有目录浏览器,供用户决定保存路径。用户选择保存位置后,文件将自动开始从 SFTP 服务器下载到该位置。这样连接就完全是SFTP了。

我想知道第二种方法的可行性有多大,以及是否有任何重要的事情需要我处理。哪些 SFTP 库最适合此类操作?

此外,如果还有其他更好的选择来完成上述 Activity ,请告诉我。

编辑

这篇文章看起来像是一个关于如何从 SFTP 服务器下载的建议请求(可能来自标题,但我想不出任何其他标题!!)。感谢您对 API 的建议,但对我们来说更重要的问题是找到一种方法,让用户从 SFTP 服务器下载文件的请求是通过安全 SSH 而不是 HTTP 来完成的。现在,使用提到的 API,我们可以很好地将文件从 SFTP 服务器下载到 HTTP 服务器的文件系统,但之后如果我们必须将同一文件重定向到用户的计算机,我们就必须使用 HTTP,而这正是我们想要避免的。

我们的第二个想法是使用带有小程序的页面来在用户客户端和 SFTP 服务器之间启动 SFTP session ,以解决上述问题。

实现起来会有多困难,我们在这方面应该采取什么方法?如果还有其他更好、更简单的方法来完成相同的任务,请提出建议。

最佳答案

我赞成Commons-VFS对于这种事情。它抽象出实际的文件系统类型,并允许您使用标准接口(interface),而不管底层实现如何。它又依赖于实际系统的其他库,特别是用于 SFTP 的 JScsh。

关于java - Web 应用程序处理用户从 SFTP 服务器下载文件的请求的功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1460948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com