簡體   English   中英

WP7 Facebook SDK示例代碼無效

[英]WP7 Facebook SDK Sample Code Doesn't Work

當前的WP7示例項目是否正常工作? 我已經下載了它,並輸入了我的應用程序ID和密鑰,我知道可以在以前的WM6.5應用程序中使用它。 我得到了facebook登錄頁面,然后登錄。我得到詢問您是否要授予權限的頁面,我這樣做。

然后,該代碼在查找“ access_token”鍵時引發KeyNotFoundException。 我在代碼中添加了:

如果(objectname.ContainsKey(“ access_code”))...

我已經把它放到任何地方,我可以看到有人試圖搜索此鍵,但無濟於事。 該代碼仍然在同一時間錯誤。

自上次成功測試此示例代碼以來,facebook方面是否有所更改? 還有什么我應該做的嗎?

非常感謝

這是一個如何在WP7中使用Facebook SDK的示例。 所以基本上我在MainPage.xaml上有了webBrowser1,但默認情況下它是隱藏的。

后面的代碼:

void MainPage_Loaded(object sender, RoutedEventArgs e)
{

            string appId = "";
            string[] extendedPermissions = new[] { "publish_stream", "offline_access", "user_groups" };

            var oauth = new FacebookOAuthClient { AppId = appId };

            var parameters = new Dictionary<string, object>
                {
                    { "response_type", "token" },
                    { "display", "touch" }
                };

            if (extendedPermissions != null && extendedPermissions.Length > 0)
            {
                var scope = new StringBuilder();
                scope.Append(string.Join(",", extendedPermissions));
                parameters["scope"] = scope.ToString();
            }

            var loginUrl = oauth.GetLoginUrl(parameters);
            webBrowser1.Navigate(loginUrl);
            webBrowser1.Visibility = System.Windows.Visibility.Visible;
            webBrowser1.Navigated += webBrowser1_Navigated;
}
void webBrowser1_Navigated(object sender, System.Windows.Navigation.NavigationEventArgs e)
    {
        FacebookOAuthResult result;
        if (FacebookOAuthResult.TryParse(e.Uri.AbsoluteUri, out result))
        {
            if (result.IsSuccess)
            {
                string _accessToken = result.AccessToken;
                webBrowser1.Visibility = System.Windows.Visibility.Collapsed;
            }
            else
            {
                var errorDescription = result.ErrorDescription;
                var errorReason = result.ErrorReason;
            }
        }
    }

我認為這可能是您要尋找的答案:

http://facebooksdk.codeplex.com/discussions/284103

另請參閱: http : //facebooksdk.codeplex.com/workitem/5925

var jsonObject = new JsonObject();

if (returnParameter.ContainsKey("access_token"))
{
    jsonObject["access_token"] = returnParameter["access_token"];
}

如果您只是登錄,那么就不需要一個名為access_code的參數。

我懷疑您需要使用access_token ,它將在嘗試登錄后作為片段的一部分返回。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM