Я придерживаюсь подхода Devise для создания гостевых пользователей для моего приложения Rails, https://github.com/plataformatec/devise/wiki/How-To:-Create-a-guest-user
Я использую файлы cookie вместо сессий (как показано ниже), чтобы попытаться сохранить одного и того же пользователя для каждого клиента, однако, когда я закрываю браузер и открываю снова, файл cookie не сохраняется, и создается новый пользователь. Я пробовал это на Chrome и Firefox, и то же самое поведение на обоих.
def create_guest_user
u = User.new(:name => "guest", :email => "guest_#{Time.now.to_i}#{rand(100)}@example.com", guest: true)
u.save!(:validate => false)
cookies.signed.permanent[:guest_user_id] = u.id
u
end
Когда я проверяю срок окончания сеанса в Chrome, его браузер закрывается не постоянно, как и должно быть. Я также пытался явно установить дату истечения срока действия, но все еще получал ту же проблему
Кто-нибудь имеет представление о проблеме и возможных решениях?