我的浏览器中的图片没有刷新

jbc*_*dge 2 php ajax file-upload

我正在尝试将新图片上传到我的网页,但在浏览器中显示旧图片.当我签入文件夹时,正在保存新图像,但它没有显示在页面中.我尝试过刷新,但没有用.关闭浏览器后仍然是一样的.我已经在不同的浏览器中测试过,它仍然是旧图像.我现在能做些什么需要帮助.我正在使用Ajax的PHP编码上传图片.

Nat*_*man 5

尝试在浏览器中按 Ctrl-F5。这应该强制刷新缓存。

如果您使用脚本生成页面,则可以在图像的输出标头中传递 no-cache http 标志。标题将是:

Cache-control: no-cache
Run Code Online (Sandbox Code Playgroud)

编辑:我看到您正在使用 php,您是否有机会在单独的 php 页面中“回显”图像?然后你可以使用该行

header("Cache-control: no-cache");
Run Code Online (Sandbox Code Playgroud)


Geo*_*ton 5

我不确定我是否完全明白你想要完成什么,但显然有一些缓存正在进行中.如果你上传的图片,使用相同的文件名,它拒绝刷新,或者你根本就不想依赖于用户缓存的刷新,一个简单的解决方案将是一个附加的随机数到最后在问号后你的图像src.即

<img src="/images/face.png?1234324">
Run Code Online (Sandbox Code Playgroud)

...这将使浏览器相信图像是一个新图像(它是),并阻止它尝试使用浏览器缓存.