使用Facebook登录注销后出现问题
我正在使用facebook sdk和facebook connect使用asp.net和c#将fb集成到我的网站中。 用户可以成功使用代码登录。 我面临的问题是每当用户通过fb登录时; 如果用户从Facebook的站点注销,然后尝试使用fb connect登录我的站点,则会出错:会话无效,因为用户已注销。
我应该再次提供facebook连接按钮,因为它最初会登录,但它会出错。 使用的代码如下所示:
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { if (ConnectAuthentication.isConnected()) { Facebook.Session.ConnectSession _connectSession = new Facebook.Session.ConnectSession(ConfigurationManager.AppSettings["ApiKey"], ConfigurationManager.AppSettings["AppSecret"]); if (!_connectSession.IsConnected()) { lblStatus.Text = "Please sign-in with Facebook."; } else { Facebook.Rest.Api api = new Facebook.Rest.Api(_connectSession); Facebook.Schema.user user = api.Users.GetInfo(); string fullName = user.first_name + " " + user.last_name; lblStatus.Text = fullName; } } else { lblStatus.Text = "Please sign-in with Facebook."; } } }
当用户注销时,会话无效。 您需要让用户再次登录。 如果您不想这样做,请在身份validation期间请求“offline_access”扩展权限。 这样用户就不必登录。
仅供参考,您必须在2011年9月1日之前转移到OAuth.Facebook之后将仅支持OAuth。
- 如何阻止asp.net阻止对文件的访问,然后在构建时抛出访问被拒绝的错误?
- Microsoft Chart堆叠列与非堆叠列
- 如何使用Not in datatable.select
- 如何将IIS应用程序池标识用户区域设置为ApplicationPoolIdentity时,如何设置它
- 在静态类中访问HttpContext.Current
- 我应该如何为AES加密数据库条目派生密钥和初始化向量?
- ASP.Net MVC 4 Custom ValidationAttributedependency injection
- 如何获取当前登录用户的ID?
- 检索具有CLSID {688EEEE5-6A7E-422F-B2E1-6AF00DC944A6}的组件的COM类工厂失败