【问题标题】:Servlet download File from remote ServerServlet 从远程服务器下载文件
【发布时间】:2024-04-20 13:40:02
【问题描述】:

我需要创建一个 Servlet,它提供来自外部服务器的文件并将其发送给用户。

www.downloadServiceUrl.com/download/path-to-external-stored-file

因为我不希望 servlet 成为“中间人”,所以我需要它来提供文件而不预先将其传输给自身,然后将其重新提交给用户以解决性能问题(否则每次下载都需要至少是所需时间的 2 倍 - 不是说这些服务器之间的速度瓶颈。

这可能吗?

谢谢!

【问题讨论】:

    标签: java spring servlets model-view-controller download


    【解决方案1】:

    我认为可以做到这一点的唯一方法是,如果您的 java 进程可以访问您的文件所在的文件系统。您的 webapp 只能在其上下文中提供文件,而不能在外部提供文件,因此您需要访问外部服务器的文件系统。

    【讨论】:

    • 难道不能通过将下载标头返回给用户来完成此操作,以便他可以从浏览器访问文件(例如,刚刚重命名)?
    • 下载标题是什么意思?
    • 类似 "setHeader("location:, Content-Disposition: attachment; filename="+realFilename+); 我只需要在下载时重命名文件,因为它是可以在网络中毫无问题地访问...
    • 我认为这个问题可能会有所帮助:*.com/questions/14448846/…
    • 感谢链接,但这并不能解决我认为的“中间 servlet”的问题?
    最近更新 更多