2013-04-29 15 views
20

Ich versuche, MongoDB mit nur Javascript vom Client zu verwenden, aber die Dokumentation von MongoDB, wie dies zu erreichen ist, ist sehr verwirrend.Verwenden von MongoDB von Client mit Javascript

Auf this Webseite gibt es nichts zum Download, ich hatte erwartet, etwas wie mongo.js zu sehen.

Here Ich habe mongo.js gefunden, und mit this versuche ich es zu arbeiten, aber ohne Glück.

Die Konsole Javascript in Google Chrome zu sagen:

Uncaught TypeError: Object [object Object] has no method 'init'

In diesem Ausschnitt aus mongo.js:

if (typeof Mongo == "undefined"){ 
    Mongo = function(host){ 
    this.init(host); 
    } 
} 

zur Verwendung von MongoDB mit reinem Javascript irgendwelche Tipps jemand tut?

Antwort

19

Die Dokumentation, die Sie verknüpft haben, behandelt den Zugriff auf MongoDB mit Server -side Javascript mit dem node.js-Framework.

MongoDB bietet einen REST-Webservice, der rudimentäre Abfragen über XmlHttpRequests ermöglicht. Um es zu aktivieren, müssen Sie mongod mit dem Parameter --rest starten. Sie können es dann wie folgt abfragen:

http://127.0.0.1:28017/yourDatabase/yourCollection/?filter_name=Bob 

Sie diese URL mit einer AJAX XmlHttpRequest wie jede Webservice abfragen. Es wird eine Datenbank auf localhost und Rückkehr JSON Zugriff entspricht einer Abfrage wie folgt:

yourDatabase.yourCollection.find({name:"Bob"}); 

Diese Schnittstelle jedoch sehr rudimentär ist. Es bietet nur einfache Suchanfragen. Aber es gibt Middleware-Layer von Drittanbietern, die erweiterte Funktionalität bereitstellen. Diese Funktion und eine Liste von 3rd-Party-Lösungen sind hier dokumentiert:

http://docs.mongodb.org/ecosystem/tools/http-interfaces/

3

Es gibt viele Einschränkungen von MongoDB bereitgestellt REST Web Services. Es hat sehr eingeschränkte Funktionalität und wir können keine Abfragekriterien oder Sortieroptionen beim Abfragen der Daten bereitstellen.

Ich schlage vor, Ihr eigenes serverseitiges Skript oder Servlet zu schreiben, um eine REST-Schnittstelle zum Abrufen der Daten von MongoDB bereitzustellen.

0

Aktualisierung: MongoDB hat in diesem Jahr einen Dienst eingeführt, MongoDB Stitch. Dies ermöglicht Entwicklern, eine Verbindung zu MongoDB Atlas (Cloud) herzustellen und Daten sowie Abfragen offen zu legen, die direkt an der UI (über js) konsumiert werden. Derzeit befindet sich die Beta-Version in der Dokumentation und den Beispielen auf ihrer Website.

Verwandte Themen