Использование MongoDB от клиента с Javascript
Я пытаюсь использовать MongoDB только с javascript от клиента, но документация MongoDB о том, как достичь этого, очень запутанна.
На этой веб-странице загружать нечего, я ожидал увидеть что-то вроде mongo.js.
Здесь я нашел mongo.js и используя this Я пытаюсь заставить его работать, но не повезло.
Консоль Javascript в Google Chrome говорит:
Uncaught TypeError: Object [object Object] не имеет метода 'init'
В этом фрагменте из mongo.js:
if ( typeof Mongo == "undefined" ){
Mongo = function( host ){
this.init( host );
}
}
Есть ли у кого-нибудь советы по использованию MongoDB с чистым Javascript?
Ответы
Ответ 1
Документация, на которую вы ссылаетесь, - это обращение к MongoDB с помощью сервера -sided Javascript с использованием структуры node.js.
MongoDB предлагает веб-сервис REST, разрешающий рудиментарные запросы через XmlHttpRequests. Чтобы включить его, вы должны запустить mongod с параметром --rest
. Затем вы можете запросить его следующим образом:
http://127.0.0.1:28017/yourDatabase/yourCollection/?filter_name=Bob
Вы можете запросить этот URL-адрес с помощью AJAX XmlHttpRequest, как любой веб-сервис. Он будет обращаться к базе данных на localhost и возвращать JSON эквивалентно запросу, подобному этому:
yourDatabase.yourCollection.find({name:"Bob"});
Этот интерфейс, однако, очень рудиментарный. Он предлагает только простые поисковые запросы. Но есть сторонние слои промежуточного программного обеспечения, которые предоставляют более расширенные функциональные возможности. Эта функция и список сторонних решений описаны здесь:
http://docs.mongodb.org/ecosystem/tools/http-interfaces/
Ответ 2
если вы хотите сделать это из веб-браузера, попробуйте метеорит, он позволяет получить доступ к стороне клиента к mongo
см. http://meteor.com/
и демо http://meteor.com/screencast
Ответ 3
Существует множество ограничений в использовании веб-сервисов REST, предоставляемых MongoDB. Он имеет очень ограниченную функциональность, и мы не можем предоставлять критерии запроса или параметры сортировки при запросе данных.
Я предлагаю написать собственную серверную часть script или сервлет, чтобы предоставить интерфейс REST для извлечения данных из MongoDB.
Ответ 4
Обновление: MongoDB имеет сервис, представленный в этом году, MongoDB Stitch. Это позволяет разработчикам подключаться к MongoDB Atlas (облако) и предоставлять данные, а также запросы, которые будут потребляться непосредственно на ui (через js). В настоящее время его в бета-версии, но документация и образцы находятся на их сайте для справки.