1

Windows PhoneアプリでFacebookC#SDKを使用してFacebookからのログアウトを実装したい

私の主な質問は、WP7でFacebook C#SDKを使用してログアウトする方法です。

この記事を検索で見つけました

記事のリンク

そこで彼は正規表現を使用してログアウトURLを見つけようとしていますが、それは私のアプリでは機能しませんでした

ブラウザでナビゲートされたイベントが無限ループに陥ろうとすると

WindowsPhone7でFacebookのログアウトに関連するサンプル/投稿を共有できます。

ユーザーの介入なしにログアウトを実行したいのですが、ボタンをクリックした後、Facebookからルードアウトし、次回からログインページを表示する必要があります。

投稿やブログもフォローしてみましたが、ダメ。

リンク1

リンク2これはアクセストークンの分割中にエラーを発生させます

アップデート

LogOutButtonCode

 FacebookClient _fbClient = new FacebookClient(fbaccess.AccessToken);
        var logoutParams = new Dictionary<string, object>();
        logoutParams.Add("next", "https://www.facebook.com/connect/login_success.html");
        //logoutParams.Add("",)

        var logoutUrl = _fbClient.GetLogoutUrl(logoutParams);
        BrowserControl.Navigated += new EventHandler<System.Windows.Navigation.NavigationEventArgs>(BrowserControl_Navigated);

        BrowserControl.Navigate(new Uri(logoutUrl.AbsoluteUri));

ナビゲートされたイベントコード

if (e.Uri.AbsoluteUri == "https://www.facebook.com/connect/login_success.html")
        {


            NavigationService.Navigate(new Uri("/MainPage.xaml", UriKind.Relative));
        }

e.Uri.AbsoluteUriが戻りますhttps://www.facebook.com/home.php

サーバーから取得しているログアウトURLhttps://www.facebook.com/logout.php?next=https://www.facebook.com/connect/login_success.html

4

1 に答える 1

4

FacebookClient.LogoutログアウトURLを生成するために使用します。

これは、いくつかの変更を加えてwp7で機能するwinformsサンプルのスニペットです。

    private void btnLogout_Click(object sender, EventArgs e)
    {
        var fb = new FacebookClient();

        var logoutUrl = fb.GetLogoutUrl(new
                                            {
                                                next = "https://www.facebook.com/connect/login_success.html",
                                                access_token = _accessToken
                                            });
        var webBrowser = new WebBrowser();
        webBrowser.Navigated += (o, args) =>
                                    {
                                        if (args.Url.AbsoluteUri == "https://www.facebook.com/connect/login_success.html")
                                            Close();
                                    };

        webBrowser.Navigate(logoutUrl.AbsoluteUri);
    }

ログアウトする必要があるため、ログインするときは必ずアクセストークンをどこかに保持してください。

于 2012-07-19T14:14:06.047 に答える