【问题标题】:The best way to send a file over a Network通过网络发送文件的最佳方式
【发布时间】:2012-05-29 07:49:38
【问题描述】:

我想通过REST 接口向浏览器发送文件。

您能建议最有效的方法吗,请记住以下几点?

  1. 流量不大。
  2. 我正在从 HBase 获取文件,这意味着当我从 HBase 获取文件时,我会在 Byte Array 中获取它。
  3. 文件不在服务器的任何文件夹中。这些文件只能从HBase 表中获取。

前端是PHP,我不知道PHP

【问题讨论】:

  • 只是将字节数据写入http响应的输出流?

标签: java php rest download network-protocols


【解决方案1】:

REST api 中,您只需将byte array 传递给Response,它就会自行处理。

使用以下代码 -

@Produces("image/jpg")
public Response getImage() {
    <Fetch it from where ever you have it>
    Response.ok(<byteArrayOfTheFile>).build();
}

【讨论】:

    【解决方案2】:

    我正在提供我发送文件的 WebService 案例研究:

    对文件内容进行编码并将其发送到他们将解码并读取内容的目的地总是好的。

    作为附件发送总是向全世界开放,因为它没有加密。如果网络流量高,失败的可能性就高。

    【讨论】:

    • @Abisek 你不是说加密和解密文件吗?编码不安全。
    • 加密和解密由于涉及证书交换而更加安全。
    • 同意 如果您使用的是非对称加密 如果您使用的是对称加密,则没有证书交换。但是,在您的回答中,您说他应该对文件进行编码和解码。编码不安全。我假设您在谈论 Base64 编码。您能否在回答中澄清这一点。
    • Ya 编码永远不会安全。这完全取决于您是在使用 VPN 还是 Intranet 连接,然后如果应用程序对世界开放,则编码文件是好的,然后以加密方式发送文件内容.
    猜你喜欢
    • 2010-09-10
    • 1970-01-01
    • 1970-01-01
    • 2011-03-12
    • 2021-03-04
    • 2021-08-31
    • 1970-01-01
    • 2015-06-23
    • 2015-10-21
    相关资源
    最近更新 更多