facebook 共享缓存的超时时间是多少。我编辑了所有页面,必须反映更改。
如果超时是无限的,我必须通过 curl 等调试所有页面。
谢谢。
您可以使用Debugger手动“清除” facebook 缓存。
只需去那里,输入您更改的 url 并单击“调试”,这将导致 facebook bot 从您的服务器请求数据,即使它已经被获取和缓存,并且新数据将替换旧数据。
毫无疑问,800k 的页面很多。
Facebook 每 24 小时抓取一次您的页面,以确保属性是最新的。当 Open Graph 页面的管理员单击 Like 按钮以及将 URL 输入 Facebook URL Linter 时,该页面也会被抓取。Facebook 会观察您 URL 上的缓存标头 - 它会按优先顺序查看“过期”和“缓存控制”。但是,即使您指定更长的时间,Facebook 也会每 24 小时抓取一次您的页面。
(URL Linter 是调试器)
但根据我的经验,情况并非总是如此,我没有找到任何模式,但我遇到了几个月前的数据,并且在我手动使用调试器提取新数据之前,缓存并不清晰。
如果您仍想手动刷新 fb 拥有的数据,您可以编写一个脚本,将 url 发布到 Debugger 页面中的相同表单操作,我认为他们没有使用 csrf 保护。通过这种方式,您可以为所有页面自动执行此操作,这可能需要一段时间,但不会太严重。
我window.open('https://www.facebook.com/sharer/sharer.php?u='+encodeURIComponent(url_to_share))
用来制作共享弹出窗口,无论我做什么,缓存的共享都不会清除,直到我执行以下操作: