1

FacebookJSSDKを使用してFacebookページタブアプリケーションを開発しています。ランディングページにボタンがあります。クリックすると、ユーザーはアプリをインストールしていない場合はインストールするように求められます。

コードは次のとおりです。

<script type="text/javascript"> 
function installApp() {
    FB.login(function(response) {
        if (response.authResponse) {
            var accessToken = response.authResponse.accessToken;
        }
        if (response.status === 'connected') {
            window.location = 'share.php';
        } else {
            alert('Please install app first');
        }
    }, {scope:'friends_likes,email'});
}
</script> 

デフォルトでは、 FB.Loginは許可を求めるポップアップボックスを表示します。ポップアップボックスを回避する別の方法はありますか?他のFacebookアプリがこれを成功裏に達成しているのを見たことがありますが、それらがどのようにそれを達成したのかわかりません。

4

2 に答える 2

3

これには、GraphApi呼び出しでJavascriptApiを使用できます。

function fbLogin() {
    var oauth_url = 'https://www.facebook.com/dialog/oauth/';
    oauth_url += '?client_id=APP_ID_HERE';
    oauth_url += '&redirect_uri=' + encodeURIComponent('https://apps.facebook.com/APP_NAMESPACE/');
    oauth_url += '&scope=email'
    window.top.location = oauth_url;
}

次に、onclickイベントを使用してカスタムボタンで呼び出すことができます。

<a href="#" onclick="return fbLogin();">Custom Login</a>
于 2012-04-05T08:03:38.243 に答える
1

認証ドキュメントを確認しましたか?

それはあなたが利用できるすべてのオプションをほぼカバーしています。すなわち:

  1. クライアント側の認証
  2. サーバー側認証
  3. [ページ]タブ内の認証

おそらくこれらのアプローチのいずれかを使用できますが、おそらく3番目が最適です。

于 2012-04-05T07:39:32.383 に答える