3

アクションをタイムラインに公開するときのFacebookのオープングラフAPIの信頼性はどれくらいですか?

背景

  • 新しいFBiOSアプリを作成しました
  • ジェネリック型は機能しないため、カスタムオブジェクト「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要件に準拠したブログ投稿ページのヘッドスニペットです。

<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>

テスト環境

  • シミュレータと実際のデバイスでテスト済み
  • リクエストを試行するたびに、アプリのネットワークの問題を除外するために新しいアプリを開始します。
  • 毎回、私のリクエストはまったく同じで、リンクされたブログ投稿のURLも同じです。
  • 利用可能な最新のiOSSDKを使用しています
  • 私のネットワークは完全に信頼できます
  • ブログ投稿ページにアクセスでき、opengraphによって設定されたすべての要件が正しく含まれています

Facebook APIからのエラー応答は、毎回異なります。

  • OAuthException:予期しないエラーが発生しました。後でリクエストを再試行してください。
  • 例外:URLからデータを取得できませんでした。
  • 例外:ドメイン「blogpost.url」が指定されたアプリケーションID「XXXXXXXX」に許可されていないため、タイプ「MY_APP:blogpost」のURL「http://blogpost.url/here」のオブジェクトは無効です。構成済みの「アプリドメイン」はhttps://developers.facebook.com/apps/XXXXXXXで確認できます。

(注:明らかに、blogpost.urlは実際の既存のページに置き換えられています)

リクエストの成功率は約30%です。

Facebook側に問題がある可能性はありますか?現在、Facebook共有の信頼性の現在の形でアプリを公開する気はありません。

フィードバック、ヘルプ、アドバイスをありがとうございます。

4

1 に答える 1

2

さらに調査と忍耐を重ねた結果、今ではすべてが確実に機能しています。

次のエラーは、24時間以内に表示されなくなりましたが、コードを変更することはありませんでした(FBで実際に問題が発生したと思います)。

  • OAuthException:予期しないエラーが発生しました。後でリクエストを再試行してください。
  • 例外:ドメイン「blogpost.url」が指定されたアプリケーションID「XXXXXXXX」に許可されていないため、タイプ「MY_APP:blogpost」のURL「http://blogpost.url/here」のオブジェクトは無効です。構成済みの「アプリドメイン」はhttps://developers.facebook.com/apps/XXXXXXXで確認できます。

次の例外は、アクションオブジェクトのURLが原因で発生しました。URLは「FB公開アクション」の1秒前に文字通り公開されたため、URLは実際にはWebフロントエンドのすべてのインスタンスで公開されませんでした。

  • 例外:URLからデータを取得できませんでした。

これが将来誰かに役立つことを願っています。

于 2012-04-16T11:07:34.193 に答える