所以我在java中创建一个从服务器下载文件的程序。 我有一个带有瓶子web框架的服务器。
现在我不确定我应该如何将数据从服务器传输到客户端。
以下是我想到的两个想法。
将我需要下载的文件作为静态文件下载到服务器上,然后使用java下载它。
向服务器发送一个帖子请求,回复部分数据,我必须遍历它,直到我有完整的文件。
1号将是最简单的,但我猜任何人都可以这样访问它,所以它可能不是最好的主意。
你们对我应该如何构建它有什么建议吗?
答案 0 :(得分:0)
假设您正在使用基于Servlet或Servlet的框架。
将文件内容写入响应,并使用文件名设置Content-Disposition: attachment; filename=yourfilename
。如果需要,您可能还需要设置Content-Transfer-Encoding: binary
标题。
答案 1 :(得分:0)
For 2. GET请求可以返回数据。使用GET比POST更合乎逻辑,因为POST用于上传文件。然后,您可以在响应中包含文件内容,其内容类型也设置为键入。
答案 2 :(得分:0)
可能会帮助你
from bottle import static_file
@route('/download/<filename:path>')
def download(filename):
return static_file(filename, root='/path/to/static/files', download=filename)