【问题标题】:How to cache image requested with AJAX?如何缓存使用 AJAX 请求的图像?
【发布时间】:2015-06-08 11:33:47
【问题描述】:

我正在为我正在进行的项目创建一个简单的照片查看器。当用户查看图像时,它会被 AJAX 请求并注入到 DOM。这很好用,但是我很难让cache 标志正常工作。每次图像更改时,都会再次请求它。如何强制浏览器缓存图像?理想情况下不使用本地存储或服务器端解决方案。

编辑:

也许我不清楚。假设图库中总共有 5 张图片,用户已经看过全部 5 张但想再次查看它们 - 届时浏览器将再次下载它们而不是使用缓存版本。在网络面板中可以很容易地看到它。图片正在加载两次。

这是我的代码:

$.ajax( {

    url: imgUrl,
    type: 'GET',
    cache: true,
    success: function() {

        $slide.prepend( '<img src="' + imgUrl + '" />' );

    }

} );

【问题讨论】:

  • 如果图像发生了变化,那么它必须重新下载...?缓存仅适用于更改的文件。
  • 也许我不清楚。假设图库中总共有 5 张图片,用户已经看过全部 5 张但想再次查看它们 - 届时浏览器将再次下载它们而不是使用缓存版本。在网络面板中可以很容易地看到它。图片正在加载两次。
  • 你可以使用cookie
  • 是的,我可以,我也可以使用本地存储或类似的东西,但这并不是真正的解决方案。我觉得这应该由浏览器本机完成,即。它不应该两次加载相同的资源!因此,我的 AJAX 函数中的 cache 标志。但它不起作用。

标签: javascript jquery ajax image caching


【解决方案1】:

cache 设置为false 有效。但我不知道为什么!

【讨论】:

    猜你喜欢
    • 2010-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-17
    • 1970-01-01
    • 2014-11-25
    相关资源
    最近更新 更多