【问题标题】:Send compressed images from server and uncompress them in client从服务器发送压缩图像并在客户端解压缩它们
【发布时间】:2016-06-07 11:12:37
【问题描述】:

我正在开发一个项目,使用 CakePHP 3 用于服务器端和 Android 用于客户端。在这个项目中,我必须将大量产品图像从服务器发送到应用程序。当应用程序请求产品的图像时,服务器会在数据库中搜索图像的 url,并通过 json 响应将它们发送到应用程序。然后,在应用程序中,我使用 Volley 库中的 NetworkImageView 加载图像。

这个过程可行,但是图片比较大,所以如果你使用像 4g 这样的移动网络,它会消耗大量的数据。我不能失去图像质量,所以我不能过多地对待图像。

我的想法是在服务器端压缩(以某种方式)图像,通过 json 发送字节数组并在应用程序中解压缩它们,这样我就可以最大限度地减少数据消耗。

我找不到任何关于我上面描述的信息,我不确定这是否是正确的方法。任何帮助将不胜感激。

【问题讨论】:

    标签: image webserver compression android-volley http-compression


    【解决方案1】:

    我的想法是在服务器端压缩(以某种方式)图像,通过 json 发送字节数组并在应用程序中解压缩它们,这样我就可以最大限度地减少数据消耗。

    JSON 将增加,而不是减少由于显而易见的原因需要发送的数据量。它是您用例中的一个信封,JSON 的工作方式将添加 更多 数据。检查 JSON 规范。

    您想在您的网络服务器 (Nginx here) 上启用 gzip 压缩,请查看 Google 或 superuser.com 了解更多详情。

    但是,当您发送 20mpx 的图像时,这对于移动使用也不会产生显着影响。我会发送 small 图像,并且只在需要时发送较大的版本,当用户放大时。猜猜这是可行的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-06
      • 2016-02-05
      • 2023-03-14
      • 2015-10-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多