11
4
|
I am currently evaluating Mongo and CouchDB for storing data points (analytics).
During my earlier interaction with CouchDB, I loved its JSONP based interface. I could perform all CRUD operations from purely JavaScript. Just run CouchDB and write some JavaScript - no server side component needed.
When comparing this to Mongo, is there any REST interface available? Is it possible to do CRUD purely from javascript in Mongo?
Thanks!
| |||
add comment |
13
|
There is no full-blown REST interface to MongoDB, mainly because the server uses native binary protocol for efficiency. However you can find few REST wrappers in official documentation:
| ||
add comment |
3
|
Another option (shameless plug) is DrowsyDromedary.
We developed Drowsy out of frustration with the other REST options for Mongo. Namely, we found that:
Sleepy Mongoose is not really RESTful. It's a hacky HTTP interface that does not follow REST conventions; it doesn't use the standard REST HTTP methods, it doesn't use URLs to properly identify resources... We also found the options for limiting the maximum number of results (which is limited by default) rather confusing.
mongodb-rest offers a proper REST interface, but we found it to be a pain in the ass to run. It would die regularly, and drove our sysadmin insane (who admittedly has little experience running node.js services).
The built-in REST interface would have been great, but it being read-only means it's mostly useless for our needs.
DrowsyDromedary, was developed to address many of the above issues:
| ||
add comment |
2
|
mongodb-rest's fork by ActibeUnits (github repo) is one of the fastest and most feature rich rest interface to mongodb that I've seen.
I would highly recommend it.
| ||
add comment |
1
|
Not really. The mongod process includes a simple read-only REST interface for convenience. For full REST capabilities you need to use an external tool such as Sleepy.Mongoose.
| ||
add comment |
--rest
on the command line to mongod, or addrest = true
withinmongodb.conf
, also to enable JSONP output you need--jsonp
orjsonp = true
and then you specify the name of the callback function as a request parameter like thishttp://mymongodb.example.com/database/collection/?jsonp=myCallback
– gb96 Jan 29 '13 at 6:08