【问题标题】:Facebook open-graph - publish action reliabilityFacebook 开放图 - 发布动作可靠性
【发布时间】:2012-04-20 04:55:18
【问题描述】:

谁能告诉我,在将动作发布到时间线时,Facebook 的开放图形 API 的可靠性如何?

背景

  • 我创建了一个新的 FB iOS 应用
  • 使用自定义对象“blogpost”创建一个新的操作类型“write”,因为通用类型不适用于我
  • 遵循 Facebook 在http://developers.facebook.com/docs/opengraph/tutorial/ 提供的教程的每一点,以符合所有 OG 要求

发布代码

[self.facebook requestWithGraphPath: @"me/MY_APP:write" andParams: [NSMutableDictionary dictionaryWithObject: @"http://blogpost.url/here" forKey: @"blogpost"] andHttpMethod: @"POST" andDelegate: self];

以下是符合OG要求的博文页头sn-p:

<head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# MY_APP: http://ogp.me/ns/fb/MY_APP#">
      <title>Blogpost page</title>
      <meta property="og:title" content="Blogpost page" />
      <meta property="og:image" content="http://url.to/the/image.png" />
      <meta property="fb:app_id" content="123456790123456789" />
      <meta property="og:url" content="http://blogpost.url/here" />
      <meta property="og:type" content="MY_APP:blogpost" />
</head>

测试环境

  • 在模拟器和实际设备中测试
  • 对于每次请求尝试,我都会启动一个全新的应用程序以排除任何应用程序的网络问题。
  • 每次,我的请求都完全相同,链接的博文网址相同。
  • 我正在使用最新的 iOS SDK
  • 我的网络非常可靠
  • 博客文章页面可访问并正确包含 opengraph 设置的所有要求

来自 Facebook API 的错误响应每次都不同:

  • OAuthException:发生意外错误。请稍后重试您的请求。
  • 异常:无法从 URL 检索数据。
  • 异常:“MY_APP:blogpost”类型的 URL“http://blogpost.url/here”处的对象无效,因为指定的应用程序 ID“XXXXXXXX”不允许使用域“blogpost.url”。您可以在https://developers.facebook.com/apps/XXXXXXX 验证您配置的“应用程序域”。

(注意:很明显,blogpost.url 被替换为真实的现有页面)

请求成功率约为 30%。

Facebook 端是否有任何问题?目前,我不想以 Facebook 共享可靠性的当前形式发布我的应用程序。

感谢您的任何反馈、帮助或建议。

【问题讨论】:

    标签: iphone ios facebook-graph-api facebook-opengraph


    【解决方案1】:

    经过进一步的研究和耐心,现在一切正常。

    以下错误刚刚在 24 小时内停止出现,我们这边没有任何代码更改(我想 FB 确实有问题):

    • OAuthException:发生意外错误。请稍后重试您的请求。
    • 异常:“MY_APP:blogpost”类型的 URL“http://blogpost.url/here”处的对象无效,因为指定的应用程序 ID“XXXXXXXX”不允许使用域“blogpost.url”。您可以在https://developers.facebook.com/apps/XXXXXXX 验证您配置的“应用程序域”。

    以下异常是由我们的操作对象的 url 引起的 - 因为该 url 在“FB 发布操作”之前一秒就生效了,所以该 URL 并未真正在我们的 Web 前端的所有实例中发布:

    • 异常:无法从 URL 检索数据。

    希望这对将来的人有所帮助。

    【讨论】:

      猜你喜欢
      • 2014-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-20
      相关资源
      最近更新 更多