Facebook JS SDKで表示されているポップアップのブロックに問題があります。ドキュメントを読んだ後、JS SDKの呼び出しはユーザーのクリック後でなければならないことを理解しています。 このコードは正しく動作し、ブラウザがポップアップをブロックしない:facebook SDKで表示されるブロッキングポップアップの防止
function Login() {
FB.login(function (response) {
if (response.authResponse) {
DoSmth(response.authResponse.accessToken);
}
}, { scope:'user_birthday, publish_stream' });
}
しかし、私は(。元のために壁に掲示、ユーザデータを取得する)どこでも、このコードを使用する場合、ポップアップはすべての場合に表示されますたとえユーザーが既にFacebookにログインしていても。私は、それはうまくないと思う。ユーザがすでにログインしている場合、表示されませんこの場合、ポップアップで
function CheckOrLogin() {
FB.getLoginStatus(function (response) {
if (response.status === 'connected') {
DoSmth(response.authResponse.accessToken);
}
else {
FB.login(function (response) {
if (response.authResponse) {
DoSmth(response.authResponse.accessToken);
}
}, { scope:'user_birthday, publish_stream' });
}
}, true);
}
しかし、ユーザーはログインfacebookでログインされていない場合:確認するには
、そのユーザがすでにログインし、私はこのコードを使用します。 、この条件(
同じ問題が発生しています。 – Multitut