我正在使用表达式静态来托管我的机器人在卡片中使用的图片。当我更新图片时,没有任何变化。
在浏览器中进行一些检查后,Facebook似乎很可能会缓存我的照片。
以下是Facebook获取的网址:
https://external-ams3-1.xx.fbcdn.net/safe_image.php?d=AQBuS02rfKAdYlVs&url=my_url&_nc_hash=AQA-wiEHYNeC11mJ
这是图片的旧版本。虽然如果我去上面引用my_url
,我会得到更新的、正确的图片。
如何强制 Facebook 在缓存中重新加载此资源?
更新:我用Facebook共享调试器抓取了我的网址,它显示了正确的图片,但在Messenger中我仍然看到旧版本。
我也无法与信使一起使用。但是,似乎有效的是使用无用的查询参数"破坏"缓存。 例如,如果我想显示图像 -
http://www.fnordware.com/superpng/pnggrad8rgb.png
在信使中,但我希望能够修改图像,我只是使用
http://www.fnordware.com/superpng/pnggrad8rgb.png?cachebuster=0002
当缓存拦截器的值发生变化时,Messenger 将找不到缓存的内容,并会重新提取您的图片。 当然,您可以随意命名查询参数。 如果要每次都获取,则可以对缓存破坏值使用随机数,也可以在每次构建时或在修改映像时手动递增该值。
希望它对某人有所帮助。
我想这是类似的场景如何清除Facebook的图像缓存
您以前的名片不会更改,但它应该会在新发布的名片上更改。