客户端将文件从Web服务器传输到另一台机器

时间:2012-04-24 08:05:17

标签: tomcat servlets

有一个Tomcat Web服务器,比如WS1,我有我所有的servlet和HTML页面。 WS1的客户端在WS1上传文件。然后,该文件被读取,加密并存储在其他文件夹中的WS1上。

我要做的是在其他机器上发送/传输此加密文件,例如机器A.假设客户端搜索他已存储的文件,该文件应从机器A下载到WS1.WS1将执行解密并且应该在客户端上发送解密文件。

我已经完成了加密部分,但却遇到了文件传输问题。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:0)

这里有一个。 "文件应从机器A"下载到WS1;或者它应该是b。"文件应该从网络服务器下载到机器A"。

这实际上与你的问题标题和问题正确相矛盾。

如果" b。"是你想要的(可能它应该是),t

然后,您需要编写代码以从Web服务器WS1下载文件。

以下是使用Servlet下载文件的摘录。

String value = "attachment;filename=\"" + URLEncoder.encode(filename, "UTF-8") +'"';
response.setHeader("Content-Disposition", value);

OutputStream out = response.getOutputStream();
FileInputStream in = new FileInputStream(my_file);
byte[] buffer = new byte[4096];
int length;
while ((length = in.read(buffer)) > 0){
     // logic to decrypt the file
    out.write(buffer, 0, length);
}
in.close();
out.flush();

当然,您需要处理相应的例外情况。