Application jQuery côté client avec MongoDB

J'essaie d'écrire une application d'exemple très simple pour me familiariser avec l'utilisation de MongoDB. Essentiellement, j'aimerais avoir une seule page Web qui interroge un serveur MongoDB local, en ajoutant et en supprimant dynamiquement le contenu en utilisant jQuery. Je n'ai aucun souci de lancer la mise en page et le jQuery, mais je suis de plus en plus confondu avec la partie MongoDB de l'équation. Je comprends que MongoDB est un serveur et s'exécute à distance du client, mais pour mon exemple, je veux simplement pouvoir faire une requête rapide et facile à partir du JavaScript côté navigateur côté client

$("#toggle").click(function() { if ($(this).is(":checked") { // add items from mongodb addItems(mongodb.test.find({ age: { $gt: 5 }})); } else { $("#results").hide(); } }); 

Existe-t-il un moyen d'interface avec MongoDB de cette façon?

Vous avez besoin d'un pilote pour vous connecter à un serveur MongoDB. La liste des pilotes est ici: http://www.mongodb.org/display/DOCS/Drivers

Il existe un pilote JS, mais uniquement pour JS côté serveur – spécifiquement node.js

Bottomline, vous ne pouvez pas vous connecter directement à partir d'un navigateur. Vous avez besoin d'un composant côté serveur.

Comme @balafi déclare que vous avez besoin d'un pilote.

MongoDB possède une interface REST et, en fait, il existe des drivers tels que Mongoose qui a été conçu pour créer une interface REST entièrement fonctionnelle pour MongoDB.

Ce pourrait être l'itinéraire à parcourir si vous souhaitez utiliser MongoDB sans tous les problèmes de configuration d'une fin de serveur. De cette façon, vous souhaitez simplement faire un appel POST ou GET depuis JQuery avec les paramètres spécifiés que vous souhaitez.

Vous pouvez trouver plus d'informations sur les interfaces REST ici: http://www.mongodb.org/display/DOCS/Http+Interface

Cependant, je devrais vous avertir que la version intégrée de MongoDB est extrêmement insuffisante et n'est conçue que pour des requêtes extrêmement simples.