0

我有一个基于会话的 facebook 应用程序。我有如下不良行为:如果用户正在使用该应用程序,则从 facebook 注销,而其他一些用户登录到 facebook 并登录该应用程序,他们会看到刚刚注销的用户数据。

基本上我想在每次访问者点击第一页时清除会话。

我有一个 HomeController,它在基本控制器中扩展 BaseController 我检查用户是否有会话。

我应该把 Session.clear() 放在哪里以防止用户访问旧用户会话?

HomeController{
   [authorize for facebook]
   indexAction{
      redirect to home action
   }

}

我担心的是,当调用 indexaction 之前,将调用该基本控制器,我将得到一个无限循环。

注意:我正在使用一个 UserCookie,我在其中存储了用户 ID 和 cookie 的过期时间。

有任何想法吗?

4

1 回答 1

2

看起来您想检查 Facebook 用户 ID 是否与会话状态中的数据匹配。如果当前 facebookId 与 `Session["FBID"] 匹配,最简单的方法是Session["FBID"]=facebookId检查每个请求,如果不匹配 - 清除会话(无论当前位置如何)。

于 2012-05-22T22:52:24.090 回答