質問

WordPressのWebサイトにFacebookを実装していますが、1つの状況を除いてすべてがOKで動作しています。

Facebookからログアウトしてから、Webサイトの[ログアウト]をクリックした場合、エラーが表示されます。

fb.logout()は、アクセストークンなしで呼び出されます。

したがって、ログアウトコードをこれに置き換えます。

javascriptを返します:if(fb.getacstoken()){fb.logout(function(){location.href = '"。$ url。"'})} else {location.href = '"。$ url。"'} ";

(これは、WordPressログアウトURLを使用できるように、WordPressフックで行われます)

しかし、この状況でログアウトをクリックすると、JSエラーが表示されます。

安全でないJavaScriptにフレームにアクセスしようとします...

FacebookとWordPressから安全にログアウトできるにはどうすればよいですか。 FB.Logoutにはエラーコールバックがなく、JSエラーをスローしないため、その状況を確認することは困難です。

ありがとうございました!

役に立ちましたか?

解決

Facebookから最初にログインステータスを取得する必要があり、ログインした場合にのみ、FB.Logoutに電話できます。次のコードを試してください。

FB.getLoginStatus(handleSessionResponse);

function handleSessionResponse(response) {

    //if we dont have a session (which means the user has been logged out, redirect the user)
    if (!response.authResponse) {
        return;
    }

    //if we do have a non-null response.session, call FB.logout(),
    //the JS method will log the user out of Facebook and remove any authorization cookies
    FB.logout(response.authResponse);
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top