Как я могу переключить хранилище сессий в соответствии с клиентом на Ruby on Rails 2.3.5 - PullRequest
1 голос
/ 12 марта 2010

У меня есть вопрос о сессиях на ruby-on-rails. У нас есть несколько вариантов хранения сеансов, таких как cookie, active_record_store и т. Д. Я в основном использую хранилище cookie, но есть клиент, который не поддерживает функцию cookie. В этом случае я должен заставить этого клиента использовать «active_record_store». Моя версия рельсов 2.3.5. Я обнаружил, что, хотя я использую active_record_store, куки все еще доступны. В моей ситуации оба сеанса хранения могут быть доступны. Итак, я хочу сделать фреймворк, чтобы в первую очередь использовать куки, когда куки доступны. С другой стороны, клиент не поддерживает cookie, во-вторых, использовать active_record_store.

Я думаю, что эта функция требует некоторого переопределения для фреймворка, но я не знаю, как это сделать. У вас есть идеи для этого? Заранее большое спасибо.

1 Ответ

0 голосов
/ 12 марта 2010

Если ваш клиент не может хранить куки, у вас не может быть session_store. Даже в active_record.

Система сеансов знает, какой сеанс у вас с сохранением session_id в cookie. Так что, если ваш клиент отказывается от куки. Вы не можете иметь сессионную систему.

Но вы можете немного взломать систему, в которой хранилище файлов cookie передается в параметрах URL.

...