Facebook C#SDK for Facebook Connect

时间:2011-03-17 18:20:02

标签: facebook facebook-c#-sdk

如何使用Facebook C#SDK进行Facebook连接?

我要做的是:

  1. 提供“使用Facebook登录”按钮。
  2. 用户点击“登录”按钮后,在服务器端获取访问令牌并登录我的网站。
  3. 大多数文章(我通过谷歌或SO发现)表示使用Facebook Javascript SDK进行登录和身份验证,然后从Web浏览器上创建的Cookie中获取访问令牌。

    到目前为止我做了什么:

    使用.aspx页面中的Facebook登录按钮,代码如下。

    <fb:login-button onlogin="window.location.reload();" perms="offline_access">Login with Facebook</fb:login-button>
    

    我遇到的问题:

    1. 当我点击MY PAGE上的登录按钮时,会弹出一个窗口登录facebook。 MY PAGE应该在我登录facebook时重新加载,但即使我点击“取消”按钮或关闭弹出窗口,它也会重新加载。我需要的是仅在我登录时重新加载MY PAGE。

    2. 从上面的步骤:如果我登录并且MY PAGE重新加载完美。在后面的代码(页面加载事件)中,我可以看到创建的cookie,它具有我需要的信息(访问令牌)。从这里开始,我想使用Facebook C#SDK获取用户信息。怎么办?

    3. 我在3个月前使用Facebook C#SDK在Facebook上开发画布应用程序。 Codeplex上列出的文档和示例适用于Facebook上的应用程序(如果我错过了看到facebook连接示例,请更正我)。此外,还有一个文档链接列出了所有Facebook C#SDK类,但我现在看不到。如果您知道,请提供链接。

      任何帮助将不胜感激。 谢谢。

1 个答案:

答案 0 :(得分:0)

http://blog.prabir.me/post/Facebook-CSharp-SDK-Writing-your-First-Facebook-Application-v6.aspx

但是有一个问题我没有使用

parameters.response_type = "token"; 

而不是我有更新令牌的功能

public static void UpdateToken()
        {
            var fb = new FacebookClient();

            dynamic result = fb.Get("oauth/access_token", new
            {
                client_id = AppId,
                client_secret = AppSecret,
                redirect_uri = Url,
                code = FacebookUtils.FacebookData.Code
            });
            FacebookData.AccessToken = result.access_token;
        }