2012-05-22 4 views
0

У меня есть приложение facebook, которое основано на сеансе. у меня плохое поведение: если пользователь использует приложение, то выходит из фейсбука и других журналов пользователей в facebook и журналы в приложении, они видят пользовательские данные, которые только что вышли из системы.ясная сессия при каждом первом посещении

По существу, я хотел бы очистить сеанс каждый раз, когда посетитель попадает на первую страницу.

У меня есть HomeController, который расширяет BaseController в базовом контроллере. Я проверяю, имеет ли пользователь сеанс.

где я должен поставить Session.clear(), чтобы пользователь не мог получить доступ к старому сеансу пользователя?

на

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

} 

моего беспокойства в том, что, когда indexaction вызывается до этого базового контроллер будет вызван и я получу бесконечный цикл.

Примечание: Я использую UserCookie, в котором храню идентификатор пользователя и истекает срок действия файла cookie.

любые идеи?

ответ

2

Похоже, вы хотите проверить, соответствует ли идентификатор пользователя Facebook данным в состоянии сеанса. Проще всего было бы поместить что-то вроде Session["FBID"]=facebookId и, чем проверять каждый запрос, если текущий facebookId соответствует `Session [" FBID "], если нет - очистить сеанс (независимо от текущего местоположения).

+0

Да, я думал об этом, я искал легкий ответ. например, очистка сеанса в точке входа и т. д. – DarthVader

+0

@DarthVader: это не намного легче, чем сравнение новых данных facebook с данными в сеансе. –

+0

:) Хорошо. я сделаю это. Благодарю. – DarthVader

Смежные вопросы