J'utilise node.js avec express et connect-mongo comme magasin de session. Lorsque je vérifie ma collection de sessions dans mongo, il n'y a que l'attribut _id un attribut de session dans chaque ensemble de données. La valeur de l'attribut de session est une chaîne. Y at-il un moyen de stocker les données de session en tant que BSON?Enregistrer la session en tant que BSON au lieu d'une chaîne sur node.js avec MongoDB
Répondre
Peut-être que je ne comprends pas votre question directement, mais MongoDB stocke déjà tout en utilisant BSON. Donc, si vous stockez votre collection Session telle quelle, elle sera convertie en une chaîne JSON.
Référence: http://www.mongodb.org/display/DOCS/Inserting
EDIT:
Jetez aussi un coup d'oeil à ce>Mongo JSON document -> JSON -> BSON
Cela peut aider dans votre scénario spécifique.
Je pense que c'est un problème spécifique à node.js, car je pensais que le gestionnaire de session mongodb-connect le gèrerait déjà comme ça. – Thomas
C'est simplement la façon dont cet intergiciel a été écrit pour fonctionner (mais qui sait pourquoi cela a été fait de cette façon).
Il convertit votre objet session en une chaîne json lorsqu'il l'enregistre dans mongodb et le convertit en objet lorsqu'il est à nouveau lu.
Je suggère de passer à l'alternative connect-mongodb middleware si vous voulez que les objets de session stockés comme le même objet dans mongodb. La connexion pour connect-mongodb est un peu différente de connect-mongo, mais une fois que la connexion est établie, le reste de l'API est le même, donc votre code existant devrait fonctionner.
- 1. comment créer session avec MongoDB dans Node.js
- 2. Comment enregistrer un horodatage MySQL en tant que chaîne au lieu d'un DateTime en utilisant AutoMapper?
- 3. Désérialisation de MongoDB BSON
- 4. Node.js: Comment enregistrer des images encodées en base64 sur le serveur en tant que png/jpg
- 5. java: enregistrer la chaîne en tant que fichier gzip
- 6. Enregistrer la chaîne formatée en tant que XAML
- 7. Impression de xml en tant que chaîne dans le navigateur au lieu d'utiliser la méthode asXml()
- 8. mongodb, node.js et données cryptées
- 9. Chaîne en tant que GeoCoordinate
- 10. en utilisant php, comment enregistrer une plus petite que les images 16MB à MongoDB en utilisant BSON
- 11. Comment enregistrer des données en tant que BlobProperty au lieu de ListProperties multiples?
- 12. Node.js en tant que redirecteur JSON
- 13. Enregistrer des dates au format mongodb
- 14. enregistrer la toile en tant que jpg
- 15. Inclure @ font-face avec enregistrer la page en tant que
- 16. En Java, comment analyser XML en tant que chaîne au lieu d'un fichier?
- 17. ExtJS Valeurs TextField soumises en tant que chaîne au lieu d'entier/nombre
- 18. Exécution de Node.js en tant que service sur Cygwin
- 19. etree get attribut en tant que valeur au lieu d'une chaîne
- 20. Runnnig node.js en tant que service Windows
- 21. CodeIgniter Form Validation - Obtenir le résultat en tant que "tableau" Au lieu de "chaîne"
- 22. Callbacks avec node.js/MongoDB/Mongoose
- 23. Objet MongoDB Sérialisé en tant que JSON
- 24. Enregistrer des dates dans MongoDB en tant que nombre entier plutôt que valeur MongoDate
- 25. Indice spatial Geo en mongodb avec node.js
- 26. Comment puis-je convertir une chaîne json en bson dans la console MongoDB?
- 27. Durée de vie de la session dans node.js avec express et MongoDB
- 28. Enregistrer une chaîne base64 sur le disque en tant que binaire en utilisant Delphi 2007
- 29. Facebook user_id comme MongoDB BSON ObjectId?
- 30. Chaîne vide Arguments API pour actionwebservice reçus en tant que "SOAP :: Mapping :: Object" au lieu de ""
[Il n'existe pas d'objet JSON.] (Http://benalman.com/news/2010/03/theres-no-such-thing-as-a-json/) –
Wow, the Le terme '' objet JSON "' a vraiment pris son envol. Il peut devenir l'un de ces malentendus comme 'XMLHttpRequest' qui n'a rien à voir avec XML. – Anurag
@Matt Pourquoi ce JSON n'est-il pas? Je ne vois pas la connexion à votre article, car le stockage de données de MongoDB est fait pour JSON, et par conséquent l'objet utilisé dans node.js ne doit pas être stringifié. En fait, c'est exactement le point de ma question. – Thomas