如何阻止图像被缓存-OR-如何检查服务器上是否存在文件?

时间:2009-07-07 15:11:47

标签: asp.net javascript caching image

我的网站根据为其创建的名称加载图片。它会加载图像,假设它们存在,有时它们不存在。每次加载这样的图像时:

<img src="/myimages/my-image.jpg" alt=""/>

如果它不在服务器上,它似乎缓存那里没有图像,所以下次我将my-image.jpg保存到服务器后加载相同的图像,它只是显示作为空白...我怎样才能使它不缓存它找不到的图像?

编辑:我仍想缓存找到的图片

OR

或者,您如何检查文件是否存在? (最好是来自javascript)。这样我可以在加载之前检查图像是否存在,我会完全颠覆这个问题。

谢谢,
马特

2 个答案:

答案 0 :(得分:0)

可能会在代码中插入元标记;

http://www.htmlgoodies.com/beyond/reference/article.php/3472881

<META HTTP-EQUIV="Pragma" CONTENT="no-cache">

<META HTTP-EQUIV="Expires" CONTENT="-1">

在html的头部分内。?

答案 1 :(得分:0)

如果能够,请在将HTML文件发送到客户端之前从服务器进行检查。

如果这不是一个选项,您可以使用ajax:

  1. 调用页面,传入文件名
  2. 的请求参数
  3. 在页面中,检查此文件名,并根据该传递返回true或false。
  4. 回到javascript中,如果它是真的(文件存在),请允许加载该图像。否则,请加载默认(占位符)图像,或者根本不显示任何图像。