【问题标题】:How do I block 304 request in WKWebView to load cached images without communicating with the server?如何在 WKWebView 中阻止 304 请求以加载缓存的图像而不与服务器通信?
【发布时间】:2016-04-22 18:43:56
【问题描述】:

所以我正在开发一个基于 WKWebView 的 iOS 应用。它由 Cordova 生成。我的问题是每次我从服务器加载图像时它可能会很慢,因为与服务器的连接有时真的很慢。 我尝试将图像保存到缓存,但有时它仍然会很慢,因为我在控制台中发现我的 WKWebView 仍将与服务器 (304) 对话以验证我的缓存图像的版本。 有什么方法可以阻止 304 请求并直接加载缓存的图像?

【问题讨论】:

    标签: ios cordova browser-cache wkwebview http-status-code-304


    【解决方案1】:

    我相信 WKWebView 应该自动(或者默认情况下)利用 HTTP 标头中的缓存提示。您需要在服务器上设置/增加浏览器缓存。您如何做到这一点取决于您使用的服务器,但通常很容易做到。使用 Apache Web 服务器,您需要将服务器配置(通常位于 /etc/httpd/conf/httpd.conf)编辑为 Include conf/extra/httpd-leverage-cacheing.conf 并根据需要编辑该子配置文件。通常,图像可以使用 1 到 4 周,具体取决于它们的更改频率。

    【讨论】:

    • 非常感谢您的回答,我明天试试!晚安!
    • 您可以使用免费服务来确保利用浏览器缓存等功能在GTmetrixPageSpeed Insights 等网站上正常工作。
    【解决方案2】:

    所以我通过更改为 linux 服务器而不是节点服务器来解决这个滞后问题。就是这样,哈哈。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-04
      • 1970-01-01
      • 2016-09-08
      • 2013-01-09
      • 1970-01-01
      • 2012-03-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多