11

次の FB.Login 関数は、デスクトップの Chrome、FF、および Safari で正常に動作します。しかし、モバイル Safari (iPhone 4S でテスト済み) では、ハングし、FB.login コールバックに戻りません。Safari を使用し、ユーザー エージェントを「Safari iOS 4.3.3 - iPhone」に設定すると、コンソールでもこれを確認できます。

モバイル Safari がポップアップをブロックするためですか? (FB.login はポップアップ ダイアログをトリガーします)。

これを修正するにはどうすればよいですか? ありがとう。

function Login(returnLink) {
        FB.login(function(response) {
                    if(response.status === 'connected') {
                        console.log('User is now FB logged in.');
                        // now log them into my site
                        encodedReturnLink = encodeURIComponent(returnLink);
                        window.location = location.protocol + '//' + location.host + "/login?returnUrl=" + encodedReturnLink;
                    }
                    else {
                        console.log('User did not fully authorize after clicking FB login button.');
                    }
                },
                {scope : 'email, publish_actions, publish_stream'}
        );
}
4

3 に答える 3

0

ポップアップをブロックすることは間違いありません。直接呼び出されたときにログインが機能するシナリオを見てきましたが、ajax コールバックの結果では機能しません。

于 2012-06-05T14:58:31.557 に答える