2015-03-31 2 views
0

Итак, у нас есть веб-приложение, доступ к которому осуществляется по ссылке из электронной почты. Когда пользователь нажимает на ссылку, мы вызываем веб-службу, чтобы вытащить необходимые данные клиенту. Эти данные затем сохраняются в локальном хранилище клиента для диапазона сеанса пользователя и очищаются после.Как сохранить местную локальную сессию?

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

Так я думал о решении этой проблемы, и вот мои возможные решения:

  1. Повторное использование те же вкладки для внешних ссылок одного и того же домена. Но его not possible на данный момент.
  2. Приложите идентификатор сеанса к ключам localstorage и очистите их только при выходе из системы. Но в этом случае, если кто-то не выходит из системы должным образом, локальные элементы хранилища все равно сохраняются, и мы этого не хотим.

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

+0

вы можете использовать 'jQuery.data' .. –

+0

Да, но данные очень большие, и это было бы очень сложно. – Arunster

ответ

3

Использовать sessionStorage вместо localStorage. sessionStorage специфичен для вкладки, и те будут очищены на этой вкладке. Но sessionStorage специфичен для одного сеанса, который находится из окна точки, открытого до закрытия этого окна.

+0

И это очищается после закрытия вкладки? – Arunster

+0

Вау, это решает мою проблему, спасибо! – Arunster

+0

sessionStorage специфичен для сеанса табуляции. Таким образом, данные будут удалены после закрытия вкладки. –

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