如何清除Facebook的图像缓存

时间:2012-04-23 17:45:12

标签: facebook caching facebook-graph-api

我有一个Facebook应用程序代表我的用户创建了几个墙贴。墙上的帖子中的图像由Facebook的服务器缓存。我已经替换了我服务器上的原始图像,我想清除Facebook的图像缓存,以便所有其他墙贴更新新图像。

Facebook缓存的内容: http://platform.ak.fbcdn.net/www/app_full_proxy.php?app=236915563048749&v=1&size=z&cksum=aebffc27f986977797a9903c2b6e08df&src=http%3A%2F%2Fvcweb2.s3.amazonaws.com%2Fassets%2Fweb%2Fimages%2Ficon_square.png

原始缓存网址,现已使用新图片进行更新。 http://vcweb2.s3.amazonaws.com/assets/web/images/icon_square.png

这可能吗?谢谢!

5 个答案:

答案 0 :(得分:47)

“强制”Facebook清除特定网址的缓存的方法是使用Debugger tool

我尝试将调试器与图像的url一起使用,它显示的是新图像而不是旧图像,但是在尝试缓存的链接时,您仍然会显示旧图像。

我怀疑如果您尝试发布新帖子,将使用新图标而不是旧版本,但您发布的链接可能不会更改。

答案 1 :(得分:1)

根据我的经验,Facebook不会动态更新较旧的已保存图像,但粉丝页面的数据会显示当前的统计信息。我做了很多宣传,并看到了旧版本的消息和发送的帖子,而新的页面图像存在。然而,现在和六个月前的粉丝页面信息是相同的。

答案 2 :(得分:1)

没有在线调试器的解决方法

您可以使用旧的?v=randomhash缓存无效技巧来强制进行重新引用。您唯一需要知道的是,必须将URL参数添加到每个og:属性中。

如果您具有以下URL:example.com/items/3,则需要执行以下操作:

  • example.com/items/3?v=g45f6d的身份共享
  • 将共享图片链接为<meta property="og:image" content="example.com/items/3/image?v=g45f6d" />
  • 更新URL:<meta property="og:url" content="example.com/items/3?v=g45f6d" />

注意:在此示例中,g45f6d是随机生成的哈希。

通过这种方式,它看上去将与Facebook完全不同,因此它将像第一次看到的那样对其进行爬网。

答案 3 :(得分:0)

示例:

http://www.example.com/pic001.jpg?fbrefresh=1201226471

这是你必须使用的代码。 1201226471是您用Facebook URL替换的内容。你必须在每一页上都这样做,这非常繁琐。

答案 4 :(得分:0)

Facebook提供了一个名为Sharing Debugger的在线工具,可让您使用最新设置来搜索链接。

只需粘贴Debug字段中的链接,然后单击debug。魔术完成了!

https://developers.facebook.com/tools/debug/sharing/?q=https%3A%2F%2Fwww.iuoe115.ca%2Fprime-minister-trudeau-addresses-iuoe-canadian-conference%2F 1