2

この質問は、この質問に関連して います。アクセストークンなしで呼び出されたFB.logout()

誰かが助けてくれることを望んでいた質問がありました。

上記のリンクからすべてを入手できますが、誰かが公共のコンピューターを使用していて、誤ってFBにログインしたままになっている場合、どのように対処しますか?次に、新しいユーザーがアプリにログインしようとしますが、そうではありません。「別のユーザーとしてログイン」するために、FBから完全にログアウトするためのボタンが必要です。

彼らがアプリを承認するまで、私はそれを行うことはできませんよね?それで、彼らは他の誰かのアカウントでアプリを認証してからログアウトする必要がありますか?別の方法が必要です。

どんなフィードバックも素晴らしいでしょう-これについてしばらく検索してみましたが、役に立ちませんでした。考えすぎかもしれませんが、「別のユーザーとしてログインする」方法があるはずです。

4

3 に答える 3

0

次のようなことができます:

FB.getLoginStatus(function(response) {
    if (response.status === "connected") {
        FB.api("me", function(response2) {
            //  notify the user he is logged in as response2.name, and if it's not him call FB.logout
        }
    }
    else {
        // prompt the user to login
    }
}
于 2012-05-24T21:38:08.120 に答える
0

Session を使用して、そのセッションにユーザーの ID を保存してみてください。そのセッションの有効期限を制御できます (ユーザーがページでアクティビティを行わない場合、デフォルトでは 20 分)。各ページの読み込みで、そのユーザーのシーズンがまだアクティブであるかどうかを確認することもできます。

ページ読み込みイベント:

if(Session["LoggedIn"]==null)
{
Response.Redirect("~/Login.aspx");
}

上記のコードは、セッションの有効期限が切れた場合、ユーザーを Web サイトのログイン ページにリダイレクトします。

于 2013-03-29T09:20:18.550 に答える
0

ログアウトを次のように変更します:-

              function logout(response){
        console.log("From logout" + response);
        if(!response.authResponse){
            window.location = "/web/login/";
            return;
        }

           FB.logout(function(response){
               FB.Auth.setAuthResponse(null,'unknown');  
                 logout();
           });
        }

つまり、実際のログアウトが発生するまで、ログアウト リクエストを Facebook に送信し続けます。

于 2013-03-29T09:14:38.003 に答える