Как восстановить/продлить сессию?

Добрый день.

Преамбула. В нашем приложении (iframe) при заходе в систему запрашивается users.hasAppPermission - MESSAGING, затем - users.getInfo текущего пользователя (фио, автар и т.п.). После в процессе работы приложения - запросы users.getInfo.

Наблюдается две проблемы с сессией
1) Юзер заходит в приложение и сразу при заходе на первый же запрос получает {"error_code":102,"error_msg":"PARAM_SESSION_EXPIRED : Session expired","error_data":null}
Непонятно как это может быть, т.к. по логике он должен был зайти на страницу с игрой, то есть сессия должна как-то продлиться, т.к. пользователь явно находится в системе.
2) Юзер находится в системе, играет (первый случай удачно пройден). Через некоторое время система генерирует запрос users.getInfo. Ответ - аналогичен первому случаю. При этом "некоторое время" может быть 30 минут, может быть 2 часа, может и больше - зависит от активности пользователя и окружения.

Вопрос. Можно ли как-либо этой проблемы избежать или ее обойти, создав/получив новую сессию или продлив текущую (для случая 1)? И можно ли как-либо продлить активную сессию (для случая 2)?
Или, может быть, есть какие-нибудь альтернативные варианты обхода/решения этой проблемы?

Юзеры, вполне очевидно, недовольны, когда они в процессе активной игры не могут воспользоваться соц.возможностями. Просить их для этого перелогиниться или перезапустить приложение - это совершенно не user-friendly.

Спасибо.
  • Вопрос задан
  • 1847 просмотров
Пригласить эксперта
Ответы на вопрос 2
@NipponSunrise
Up.
Ответ написан
Комментировать
x10der
@x10der
as3 developer
Аналогичная ситуация, используем fapi5.js из flash игры через ExternalInterface.
У большинства игроков проблем нет, но в логах видим много ошибок
PARAM_SESSION_EXPIRED : Session expired
падает на первом же запросе, после обновления страницы с игрой проходит
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы