2014-01-09 3 views
0

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

Но как это сделать? Я подумал об использовании Redis для хранения случайного числа и идентификатора пользователя там, но, похоже, есть более простые решения.

Спасибо!

Редактировать: В конце я выбрал Redis, потому что это серверная сторона только для максимальной безопасности, и я могу найти для этого дополнительные возможности.

+0

куки/сессии? –

+0

Но тогда пользователь может просто посмотреть на файл cookie и выиграть каждую игру. – pgrosslicht

+0

Вы можете склеить значение, почему бы вам не использовать redis? Быстро и легко. –

ответ

2

Вы можете использовать «подписанный» файл cookie. Это позволяет пользователю "смотреть" на него, и дает никаких накладных расходов

Смотреть http://api.rubyonrails.org/classes/ActionDispatch/Cookies.html

Чтобы написать:

cookies.signed[:guess] = guess 

Для чтения:

cookies.signed[:guess] 
+0

Я не знал об этом, спасибо. Насколько они безопасны? Я не могу найти столько информации о них. Редактировать: Но пользователь не мог сохранить файл cookie, а затем отправить cookie со следующей игрой, чтобы получить тот же номер, что и раньше? – pgrosslicht

+0

Они безопасны тем, что пользователь не может «читать» их. Они могут копировать, но, удалив все «ожидающие» файлы cookie, прежде чем вы начнете новую игру, удалив ее сразу же после того, как он «решит» игру, вы должны быть довольно экономным – Danny

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