Facebook graph api Facebook在通过Graph API发布到新闻源时读取OpenGraph属性不可靠

Facebook graph api Facebook在通过Graph API发布到新闻源时读取OpenGraph属性不可靠,facebook-graph-api,ios5,facebook-opengraph,Facebook Graph Api,Ios5,Facebook Opengraph,我们有一个Facebook应用程序,通过Facebook iOS SDK将URL发布到用户的新闻源。这些URL用于定义了OpenGraph属性的页面,我们已经在Facebook Linter中验证了它的定义是否正确 然而,我们周期性地发现Facebook无法正确解析OpenGraph属性,并且在Facebook上的帖子也不多: 我们通常会对帖子进行正确的解析,从而生成如下帖子: 我们会定期收到如下帖子: 但是,您可以在FB Url Linter中看到这篇稍后的文章正常工作: 然而,有时URL

我们有一个Facebook应用程序,通过Facebook iOS SDK将URL发布到用户的新闻源。这些URL用于定义了OpenGraph属性的页面,我们已经在Facebook Linter中验证了它的定义是否正确

然而,我们周期性地发现Facebook无法正确解析OpenGraph属性,并且在Facebook上的帖子也不多:

我们通常会对帖子进行正确的解析,从而生成如下帖子:

我们会定期收到如下帖子:

但是,您可以在FB Url Linter中看到这篇稍后的文章正常工作:

然而,有时URL Linter会报告503,但我在日志中看不到任何迹象。更奇怪的是,当URL Linter报告503时,它将显示它可以读取定义的OpenGraph属性。请参见此屏幕截图:

由于这是不一致的,我的第一个猜测是这是Facebook的问题,所以我打开了。然而,由于我没有看到这个问题在其他应用程序的新闻提要中猖獗,我开始怀疑我们是否没有按照正确的步骤发布FB内容


例如,我们是否应该先发布到URL Linter,然后通过Graph API发布?这似乎是一个荒谬的额外步骤,但我在这里抓住了救命稻草…

这可能是因为在Facebook Linter访问您的站点时,它无法访问,只需使用您提供的URL在Linter工具上刷新几次,就会导致
错误的响应代码,返回
503
状态代码:

http://chewsy.com/r/a/1bhLT“”>


您应该深入应用程序/站点的日志,找出发生这种情况的真正原因并加以解决。

请注意,CloudFlare用户不应该再发生这种情况。不久前,我们为503调试器问题推出了一个修复程序,似乎已经修复了该问题。如果您发现Facebook调试器存在任何其他问题,请咨询。

我更新了我的原始帖子以解决此问题。URL linter有时会报告503,但我在日志中没有看到任何指示这一点的内容。此外,当linter报告此情况时,它仍然显示从页面读取的OpenGraph属性(参见添加的屏幕截图)@TMC,它会显示错误发生之前可用的标记的缓存版本,但如果此错误在linter第一次访问您的页面时发生,这将与您在图片#2…@TMC上看到的完全相同,此外,根据Linter的说法,一旦发生错误,您的站点不会返回任何数据。如果您在日志中看不到它,那么您可能没有记录所有内容。您可以尝试启用
debug
info
日志级别,查看Linter点击页面后得到的结果。显然,我无法通过其他工具复制此错误,例如。所以这可能不是你的问题,如果是的话,我网站上的一个BUG就在Cloudflare.com后面,根据我和他们一起的一个电子邮件线程,看起来这是他们的问题,不是我的问题。@TMC,可能是这样的。谁对此负责并不重要,除非发生这种情况,否则你会定期收到没有meta的帖子……我的网站位于Cloudflare.com背后,我刚刚与他们通过电子邮件联系,他们已经承认问题是他们和Facebook之间的,并希望解决。