【问题标题】:how to clear the client cache whe delete a image on laravel?在laravel上删除图像时如何清除客户端缓存?
【发布时间】:2018-11-02 03:44:08
【问题描述】:

Laravel 5.6 Ubuntu 16.04

视图

<div class="col-10">
   <img  src="{{$img_del}}"     class="rounded  mx-auto d-block img-fluidc" alt="testimage">
</div>

当我删除控制器使用的图像时

$path=public_path().$img_del;

Storage::delete($img_del);
or
unlink($path);

当客户端重新加载页面时,它会获得缓存图像。 因此它显示具有 del 图像的同一页面, 如何清除此图像的客户端缓存? 或者只是告诉客户端浏览器从服务器而不是从缓存重新加载?

【问题讨论】:

    标签: php view browser-cache laravel-5.6


    【解决方案1】:

    没有办法有效地清除客户端浏览器缓存。 在这种特殊情况下,您可以使用当前时间戳的获取参数重新加载页面(重定向回页面)。示例 url?t=234234234234

    在您看来,您可以将此参数附加到 img &lt;img src="fafasdf.jpg?t=234234234234" /&gt; 的 src 属性的末尾,以强制重新加载图像。

    但是,不推荐显示不存在的图像,因为浏览器可能会出现奇怪的行为(例如图像 404 图标)。为什么不将图像路径保留为数据库并从数据库行创建视图。这将使您能够向用户显示最新的图像集,因为您在取消链接时也会从数据库中删除图像。

    【讨论】:

      猜你喜欢
      • 2011-11-08
      • 1970-01-01
      • 2011-07-12
      • 2019-06-10
      • 2011-02-22
      • 2023-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多