Rails способ хранить данные на клиенте в течение длительного времени - PullRequest
1 голос
/ 13 ноября 2011

Каков предпочтительный способ хранения некоторых данных на компьютере пользователя в течение длительных периодов времени.Я не уверен, как долго сеанс живет.В качестве альтернативы я мог бы хранить данные в cookie-файле, но здесь я не могу найти API высокого уровня для хранения, который также заботится о подписи моих данных и следит за тем, чтобы они не были подделаны.

Как выобычно решают эту проблему наличия постоянного идентификатора пользователя между сеансами.

Ответы [ 2 ]

2 голосов
/ 13 ноября 2011

Вы обращаетесь с постоянным пользователем с помощью cookie - но вы весьма ограничены в том, сколько данных вы можете сохранить в cookie (4K?).

Большие базы данных должны храниться в базе данных.Некоторые браузеры поддерживают локальное хранилище (HTML5), которое также может быть вариантом.

Если вы хотите гарантировать, что оно не может быть изменено вне вашего приложения, вы должны хранить его на стороне сервера в БД,Подписанные cookie-файлы затрудняют подделку (или, по крайней мере, обнаруживают), но вы по-прежнему ограничены в размерах.

2 голосов
/ 13 ноября 2011

Проверьте эти ссылки, они могут помочь вам разобраться в работе с файлами cookie:

http://m.onkey.org/signed-and-permanent-cookies-in-rails-3

http://www.quarkruby.com/2007/10/21/sessions-and-cookies-in-ruby-on-rails

http://www.tutorialspoint.com/ruby-on-rails/rails-session-cookies.htm

...