2012-04-02 6 views
0

Facebookページタブアプリを開発しています。ここでは、ユーザーがHTML5キャンバスでページに描画します。ユーザーが図面(基本的にフォーム)を提出すると、ユーザーが必要な権限を自分のアプリケーションに付与したかどうかを確認する必要があります。そうでない場合は、フォームを送信する前にFacebookのダイアログをポップして、ユーザーに自分のアプリで認証するように要求します。ユーザーが認証されたら(または既に存在する場合)、フォームを送信します。Facebook Javascript SDKでフォームを送信する前にユーザーに認証を依頼する

要するに、ユーザーがFacebook Javascript SDKを使用して自分のアプリを認証した場合にのみ、フォームを送信するにはどうすればよいですか?

UPDATE:私はこれはショーンの提案ごとにFB.getLoginStatusとFB.Loginを使用して解決することができた

$('#submit').on('click', function() { 
     FB.getLoginStatus(function(response) { 
       if (response.status === 'connected') { 
        // User authenticated, submit the form 
       } else if (response.status === 'not_authorized') { 
        // the user is logged in to Facebook, 
        // but has not authenticated your app 
        FB.login(function(response) { 
         // handle the response 
        }, {scope: 'email,'}); 
       } else { 
        // the user isn't logged in to Facebook. 
        FB.login(function(response) { 
         // handle the response 
        }, {scope: 'email,'}); 
       } 
      }); 
     }); 

答えて

1

ユーザーが持っているかどうかを判断するためにFB.getLoginStatusを確認する必要があります

/そして、あなたのアプリhttp://developers.facebook.com/docs/reference/javascript/FB.getLoginStatus/

をauthedていないのいずれか、簡潔に答えるために:ここでは例ですFB.loginに依頼してください。フォームを提出した場合、またはフォームを提出する場合は、

http://developers.facebook.com/docs/reference/javascript/FB.login/

+0

返信Shaunに感謝します。以前はFB.getLoginStatusとFB.Loginを使用していましたが、アプリケーションの別の部分でエラーが発生していました。あなたの提案は私が正しい方向にいることを確認するのに役立ちました。私はこれを行う方法を示すサンプルコードで私の質問を更新しました。 –

関連する問題