C# 我怎么知道用户已经登录到Facebook?
我正在应用程序中使用Facebook Connect。一切都很顺利。然而,在我的constructor页面上,我想知道用户已经登录Facebook,我想显示一个不同的页面,而不是登录页面。我该怎么做?我正在使用Facebook开发者工具包3.1和Silverlight 4.0。简而言之,我想知道用户是否连接到facebookC# 我怎么知道用户已经登录到Facebook?,c#,facebook,C#,Facebook,我正在应用程序中使用Facebook Connect。一切都很顺利。然而,在我的constructor页面上,我想知道用户已经登录Facebook,我想显示一个不同的页面,而不是登录页面。我该怎么做?我正在使用Facebook开发者工具包3.1和Silverlight 4.0。简而言之,我想知道用户是否连接到facebook 提前感谢:)注意-这是在MVC中-如果您使用的是Silverlight,您可能需要修改一些代码 我使用了以下方法。在我的“登录页”中,我有以下内容: if (Request
提前感谢:)注意-这是在MVC中-如果您使用的是Silverlight,您可能需要修改一些代码 我使用了以下方法。在我的“登录页”中,我有以下内容:
if (Request.Cookies["AuthenticatedViaFacebook"] != null)
{
string val = Server.HtmlEncode(Request.Cookies["AuthenticatedViaFacebook"].Value);
if (val == "true")
{
return RedirectToAction("Login", "Account");
}
}
在帐户/登录页面中,我快速重新定向到facebook:
var oAuthClient = new FacebookOAuthClient(FacebookApplication.Current);
oAuthClient.RedirectUri = new Uri(ConfigurationManager.AppSettings["RedirectUrl"]);
var loginUri = oAuthClient.GetLoginUrl(new Dictionary<string, object> { { "state", returnUrl } });
return Redirect(loginUri.AbsoluteUri + "&scope=user_birthday");
var oAuthClient=new-facebookouthclient(FacebookApplication.Current);
oAuthClient.RedirectUri=新Uri(ConfigurationManager.AppSettings[“RedirectUrl”]);
var loginUri=oAuthClient.GetLoginUrl(新字典{{“state”,returnUrl});
返回重定向(loginUri.AbsoluteUri+“&scope=user_birth”);
如果它成功返回-我授权用户并将其发送到系统中
我将facebook id存储在我的数据库中,因此我知道它是什么用户
我不知道有什么更快或更好的方法可以做到这一点——这很快就能奏效。你看到facebook页面的url有一秒钟左右,然后你就进入了你的系统