当前位置: 首页 > 知识库问答 >
问题:

如何更新facebook打开图形图像

尹小云
2023-03-14

假设你已经通过开放图协议的meta标签为你的网页设置了facebook图像,如下所示:

如果你想用另一张同名的图片替换/更新你的图片rock.jpg,你如何让facebook在你共享页面时用新图片相应地更新你的图片?强制facebook使用此链接获取您页面的数据http://developers.facebook.com/tools/debug 不会更新图像。


共有3个答案

訾俊名
2023-03-14

几年后,这篇文章发表了,这仍然是一个问题,但它不是facebook的缓存:这经常是人为错误(请允许我详细说明)

OG: TYPE效果您的图像刮擦:

  1. https://ogp.me/#type_article 不一样https://ogp.me/#type_website

请注意,og:type=website将导致该url的任何/子页/成为“规范的”。这意味着无论你做什么,你都很难用刮板更新你的图像。

考虑这个“假设和共同的错误”

-<代码>

这些不是“所有的网站”,1是一个网站,其他的是文章。

如果你这样做了,Facebook会认为所有这些都是规范的,它会在所有这些中添加第一个og:image。(试试看,你会发现)-如果你将og:url设置为你的根域或父域,你已经告诉facebook它们都是规范的。(这有很好的理由,但它离题了)

考虑这个解决方案(这是大多数人“真正想要的”)

-<代码>

如果你现在这样做了,Facebook将大大减少你抓取新图片的问题。

最后,是的,这里的缓存清除器、随机变量、更改URL和建议都可以工作,但是如果没有正确指定og:type,它们看起来就像是“间歇性伏都教”。

PS:请记住,即使你“认为”你可以看到最新的版本,CDN或服务器端缓存也会为Facebook的scraper服务。(我不会花任何时间在这个问题上,只是想指出,如果不仔细检查,这将浪费您大量的时间。)

郭琨
2023-03-14

Facebook将你的图像存储到他们服务器上自己的图像中,然后缓存24小时。缓存延迟将来可能会改变,所以要检查它,只需打开facebook根据您的图像创建的图像,并在http头中检查其“max age”值。所以,如果你改变了你的图片,facebook在24小时前不会更新它的版本,即使你使用了这个链接http://developers.facebook.com/tools/debug 强制数据获取。

为了解决这个问题,如果您需要立即看到更改的效果,您应该重命名您的图像。所以,如果旧版本是rock.jpg命名为rock2.jpg,然后使用这个链接http://developers.facebook.com/tools/debug让facebook从你更新的图像中创建一个新图像。这将立即更新您的网页的facebook图片在facebook共享。

秦楚
2023-03-14

这是我对这个问题找到的最一致的答案:https://stackoverflow.com/a/21468084/339698

如果您懒得转到该链接,您可以发布一个ajax请求,其中包含您试图清除的url:

$.post(
    'https://graph.facebook.com',
    {
        id: 'http://www.site.com/my/share/url/',
        scrape: true
    },
    function(response){
        console.log(response);
    }
);

 类似资料:
  • 我投降。几周来,我一直试图找出是什么阻止了我的代码的图形部分更新收到的串行数据。第一次用Java编程。我有大约15年的编程经验,我习惯于解决自己的问题,但这超出了这种策略的有效性。我的申请由两个文件组成。 一个文件来自RXTX项目,每秒捕获两次以多个数据包形式发送的串行数据。这就像一个魅力(花了一些时间),我可以看到捕获的数据是正确和稳定的。 另一个文件是图形文件,由大约80个菜单组成,最终用户可

  • 我使用chart.js在我的网页上有一个BarChart。 我在其中添加了两个数据点 现在我想要更新那些条A和B,而不是删除它们并再次添加它们(我已经想好了如何做到这一点)。我想让它们垂直移动以适应它们的新值,但我无法找到如何访问图表中已经存在的数据。 没有什么比得上 其中第一个值将是存储数据的索引(F.E.)。 我该怎么做呢?

  • 问题内容: 我有一个条形图,它从mysql数据库中获取数据集,而我一直 坚持使用chartMouseClicked。 正如我在上一个 问题中了解到的那样,当前代码是在单击x或y轴条时打印的,但是 当我单击x或y轴上的特定条并打开新的框架或图表时,如何设置该代码。 还有一个信息框会很好。 问题答案: JOptionPane在您的处理程序中打开一个,如下所示ChartMouseListener添加到中

  • 我正在尝试让Selenium webdriver(控制Firefox)更新其登录的Facebook帐户的个人资料图片。我使用了一个典型的建议,即查找文件输入并发送文件路径的密钥,下面是我得到的: 无论如何,我得到的错误是: 回溯(最后一次调用):文件“C:/Users/maste/PycharmProjects/accountGenerator/accountGenerator.py”,第136行

  • 我已经搜索了这个问题,但是每个人似乎都有图形更新太慢的问题。 来介绍我的情况: 我有一个JFrame,我设置为全屏,通过使用兼容的显示模式。在JFrame中,我有几个JPanels和JButton...在一个JPanels上,我正在绘制需要更新的移动对象。 我正在像这样更新图形:验证并重新绘制JFrame,然后重新验证并重新绘制相应的JPanel。图形更新得太快了。(我需要提到的是,在JPanel

  • 我有一个有大约200张幻灯片的PowerPoint演示文稿。每张幻灯片都有一个图表,其中的数据通过到主xlsx文件的链接每月更新一次。 为了不在图表中显示空值(未来月份),我打开数据编辑器(图表右键单击>Edit data...)并选择直到当前月份的范围。 我在PowerPoint中为它写了一个宏: