我有一个Facebook应用程序代表我的用户创建了几个墙贴。墙上的帖子中的图像由Facebook的服务器缓存。我已经替换了我服务器上的原始图像,我想清除Facebook的图像缓存,以便所有其他墙贴更新新图像。
原始缓存网址,现已使用新图片进行更新。 http://vcweb2.s3.amazonaws.com/assets/web/images/icon_square.png
这可能吗?谢谢!
答案 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" />
<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