Silverlight 4浏览器应用程序中的Facebook C#SDK:OAuth 2



我对OAuth的身份验证过程完全是个新手(确切地说,我正试图使用OAuth 2),下面的使用Facebook SDK进行身份验证的示例表明,这个代码片段应该适用于C#环境(http://blog.prabir.me/post/Facebook-CSharp-SDK-Writing-your-first-Facebook-Application.aspx):

webBrowser.Navigate(loginUrl);
private void webBrowser_Navigated(object sender, WebBrowserNavigatedEventArgs e)
{
    FacebookOAuthResult result;
    if (FacebookOAuthResult.TryParse(e.Url, out result))
    {
       if (result.IsSuccess)         
       {
         var accesstoken = result.AccessToken;          
       }
       else
       {
         var errorDescription = result.ErrorDescription;
         var errorReason = result.ErrorReason;
       }
    }
} 

由于我正在编写浏览器SL应用程序,WebBrowser控件什么都不显示,所以我既无法捕捉到响应,我怎么能在我的应用程序中做类似的事情呢?或者,如果没有等效的方法,我该如何完成身份验证过程?谢谢

一个建议:为什么不在收到WebResponse时尝试解析它,而不是侦听事件?

我在我的网络应用程序中使用Facebook OAuth。它不过是一系列带有正确参数的URL帖子。

看看这篇文章:注销后使用Facebook登录问题(所有细节都在答案和评论中)

以下是简单的步骤:

  1. 使用您的AppId、重定向URL和权限调用Facebook OAuth对话框URL。Request_type应为"code"
  2. 当用户登录并授权您的应用程序时,他们将被重定向到带有"code"querystring参数的重定向url
  3. 获取代码参数的值,然后再次调用Facebook以获取令牌
  4. 使用此令牌可以代表用户进行调用

最新更新