0

forge facebook api を使用してフィード ダイアログを開いて、画像をユーザー ウォールに投稿しています。ユーザーが [共有] ではなく [キャンセル] をクリックした場合でも、成功のコールバックが発生します。ユーザーが閉じる ( x ) ボタンをクリックすると、エラー コールバックが正しく起動されます。

    forge.facebook.ui(
          {
            method: 'feed',
            link: link,
            picture: model.get('file').url,
            name: name,
            caption: caption,
            description: 'Lorem Ipsum'
          },
          function(response) {

            // Called when user clicks cancel.

            forge.notification.create(
              'Great!',
              'Item has been posted to your wall',
              function() {

              },
              function(error) {
                forge.logging.error(JSON.stringify(error));
              }
            );

          },
          function (e) {
            // Called when user closes dialogue but not on cancel.
            forge.logging.info('facebook failed: ' + JSON.stringify(e));
          }
        );
4

1 に答える 1

0

これは予期しない動作であることに同意する傾向がありますが、Facebookが提供する複数のSDKで一貫しており、しばらくの間使用されているため、そのまま通過させました。

ユーザーxがダイアログの左上にあるを押すと、エラーコールバックが呼び出されます。ユーザーがダイアログをキャンセルすると、成功{}のコールバックがコールバックパラメーターとして呼び出されます。

次のようなケースでそのケースを確認することをお勧めします。

forge.facebook.ui({
        method: 'feed',
        link: link,
    },
    function (response) {
        if (JSON.stringify(response) === "{}") {
            handleCancel();
        } else {
            handleSuccess(response);
        }
    }
    function (error) {
        handleError(error);
    }
);
于 2012-12-05T18:12:52.227 に答える