4

考えられるすべてのトピックを検索していましたが、今では解決策が機能します。

Chrome を除くすべてのブラウザで動作する私のコードがあります。との窓があるだけ An error occurred. Please try again later.です。

これは、FB ドキュメントと同じコードです。

<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>

<script>
  FB.init({
    appId  : {$appId},
    frictionlessRequests: true
  });

  function sendRequestViaMultiFriendSelector() {
    FB.ui({ method: 'apprequests',
      message: '{_"FACEBOOK_INVITE_WINDOW_MESSAGE"}'
    }, requestCallback);
  }

  function requestCallback(response) {
    //callback code
  }
</script>

<a onclick="sendRequestViaMultiFriendSelector(); return false;">
4

3 に答える 3

2

これは、アプリケーションがまだサンドボックス モードであることが原因である可能性があります。

于 2012-09-18T18:31:04.110 に答える
1

ダイアログの表示オプションを指定する必要があります ('popup, 'iframe'...)

例えば:

FB.init({
  appId  : {$appId},
  frictionlessRequests: true,
  display: 'popup'
});
于 2012-12-19T15:33:58.793 に答える
0

アプリケーションがFacebook上にあるかどうかについては述べていません。これが重要である理由はcanvas_url、アプリケーション設定のパラメーターのためです。を使用している場合apps.facebook.com/app_namespaceこのフィールドにすでに入力されています。ただし、一部のプロジェクトは、Facebook自体では動作しません。そのような場合、人々はこのパラメータを入力する必要はありません。ただし、アプリのリクエストが機能する必要があります。

ユーザーがアプリケーションリクエストに対応すると(IEはそれを受け入れます)、ユーザーはそのアプリケーションのキャンバスURLにリダイレクトされます。キャンバスのURLを指定しないと、リクエストが無効になる可能性があります。これもエラーの原因である可能性があります。

キャンバスのURLを設定してみてください。適切なURLにリダイレクトすることもでき、他に「何もする」必要はありません。

于 2012-09-23T17:42:22.740 に答える