Сохранить сессию как BSON вместо String на node.js с MongoDB - PullRequest
1 голос
/ 20 апреля 2011

Я использую node.js с Express и Connect-Mongo в качестве хранилища сеансов. Когда я проверяю свою коллекцию сессий в Монго, в каждом наборе данных есть только атрибут _id атрибута сессии. Значением атрибута сеанса является строка. Есть ли способ сохранить данные сеанса как BSON?

Ответы [ 2 ]

0 голосов
/ 13 сентября 2011

Это просто способ, которым это конкретное промежуточное программное обеспечение было написано для работы (хотя кто знает, почему это было сделано именно так).

Он преобразует ваш объект сеанса в строку json, когда сохраняет его в mongodb, ипреобразует его обратно в объект при повторном чтении.

Я предлагаю переключиться на альтернативное промежуточное программное обеспечение connect-mongodb , если вы хотите, чтобы объекты сеанса хранились как тот же объект в mongodb.Соединение для connect-mongodb немного отличается от connect-mongo, но после того, как вы настроили соединение, остальная часть API остается такой же, так что ваш существующий код должен просто работать.

0 голосов
/ 20 апреля 2011

Возможно, я не понимаю ваш вопрос напрямую, но MongoDB уже хранит все, используя BSON. Поэтому, если вы даже сохраните свою коллекцию Session как есть, она будет преобразована в строку JSON.

ссылка: http://www.mongodb.org/display/DOCS/Inserting

EDIT:

Также взгляните на этот> документ Mongo JSON -> JSON -> BSON

Это может помочь в вашем конкретном сценарии.

...