【问题标题】:Facebook Open Graph Share from iOS not working without hitting Open Graph Debugger first如果不先点击 Open Graph Debugger,来自 iOS 的 Facebook Open Graph Share 将无法正常工作
【发布时间】:2014-03-11 15:08:42
【问题描述】:

我正在尝试让 Open Graph 共享操作在 iOS 上运行。如果我首先使用 Open Graph Debugger 请求打开图形 url,它会起作用,一切都按预期工作。但是,如果我不这样做,共享对话框中的预览会显示几秒钟左右,然后淡出。发布按钮也被禁用。

我在后端看到的是,如果我使用 Open Graph Debugger 或将对象 url 粘贴到我自己的状态中,我会收到来自 Facebook 服务器 (69.171.234.117) 的请求。但是,当我直接从应用程序共享时,我看到来自另一个 Facebook 服务器 (173.252.74.115) 的请求,该服务器似乎无法正确读取 Open Graph 数据。

有没有人以前见过这样的事情或知道是什么原因造成的?

编辑:我已针对此问题向 Facebook 提交了错误。如果有变化会在这里更新。

EDIT2:Facebook 已确认此错误并正在解决此问题。目前建议的解决方法是在创建对象时使用https://graph.facebook.com/?id={url}&scrape=true 触发初始抓取。

EDIT3:Facebook 关闭了错误报告,并声称该问题已在最新的 SDK 中解决。我会验证这一点并报告。

EDIT4:这似乎现在从我的测试中得到解决。

【问题讨论】:

  • 如果您可以发布您的代码以了解您如何使用 Open Graph 实现共享对话框,那将非常有帮助。当预览在几秒钟后消失时,通常表示共享对话框中的某些字段或内容格式不正确。
  • 很遗憾,我无法发布任何真实代码。但是我可以说我正在使用presentShareDialogWithOpenGraphActionParams: 和一个 Open Graph 共享操作。 Open Graph Debugger 能够解析打开的图形对象并报告它没有问题,那里不会报告任何问题吗?此外,导致问题与不导致问题的不同服务器的症状似乎与任何客户端代码 imo 高度无关
  • 我会尝试删除您添加的额外代码,并从头开始涉及 presentShareDialogWithOpenGraphActionParams 的部分。也许尝试位于 facebook 开发人员页面上的最简单的代码示例,一旦它工作正常,就从那里开始

标签: ios facebook facebook-graph-api


【解决方案1】:

我之前遇到过这个问题,事实证明,托管在您服务器上的自定义开放图形对象的实例只有在它们第一次相关时才会被实例化。

只有将FB图中的第一条边分配给您的对象时,它才会获得一个Identifier并且它存在于FB的记录中。

这第一条边只能使用 FB 应用程序或开放图形应用程序创建。 完成后,您将能够获得对象的唯一标识符

GET https://graph.facebook.com/?ids=YOUR_OBJECT_URL

然后您可以使用返回的 ID 执行共享

另请参阅支持我的主张的this SO post

【讨论】:

  • 我已经尝试了一些,特别是使用抓取选项graph.facebook.com/?id=url&scrape=true 我想这个操作需要在创建对象后立即执行?
  • 根据我的阅读,是的 - 只有在 Facebook 实例化后,抓取才会起作用。此选项更合适的名称是“重新刮擦”:)
  • 在这种情况下,我是否还有其他关于触发 Facebook 抓取的信息?正如我现在所站的那样,虽然您的回答非常有帮助,但实际上并没有理由说明来自不同 Facebook 服务器的不同行为
  • 这个问题的答案取决于我们只能猜测的 Facebook 架构。一种猜测可能是 Open Graph Debugger 是在 Facebook 服务器上实现的,它的代码版本比生产服务器更高级,其中包含错误修复。
  • 我认为他们有不同的服务器用于不同的来源。这是来自 Facebook 支持人员的引述“我过去曾看到过一些问题,即在发布操作之前使用 Graph API 强制抓取允许发布操作而不会出错,这可能是一个很好的解决方法,但我们应该尝试解决根本问题。”
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-07-01
  • 1970-01-01
  • 2015-09-06
  • 1970-01-01
  • 1970-01-01
  • 2017-05-08
  • 1970-01-01
相关资源
最近更新 更多