Skip to content

Instantly share code, notes, and snippets.

@bmdayal
Last active October 18, 2015 15:33
Show Gist options
  • Save bmdayal/fc643b7a53b648ec05c6 to your computer and use it in GitHub Desktop.
Save bmdayal/fc643b7a53b648ec05c6 to your computer and use it in GitHub Desktop.
Sample NodeJS server created for my blog
var express = require('express');
var app = express();
var mongojs = require('mongojs');
var db = mongojs('AddressBook', ['Persons']);
var bodyParser = require('body-parser');
app.use(express.static(__dirname));
app.use(bodyParser.json());
app.get('/persons', function(req, res){
console.log('Received find all persons request');
db.Persons.find(function(err, docs){
console.log(docs);
res.json(docs);
})
});
app.get('/person/:id', function(req, res){
console.log('Received findOne person request');
console.log(req.params.id);
db.Persons.findOne({_id: new mongojs.ObjectId(req.params.id)}, function(err, docs){
console.log(docs);
res.json(docs);
})
});
app.post('/addPerson', function(req, res){
console.log(req.body);
db.Persons.insert(req.body, function(docs){
console.log(docs);
res.json(docs);
})
});
app.delete('/deletePerson/:id', function(req, res){
console.log("Received delete one person request...");
db.Persons.remove({_id: new mongojs.ObjectId(req.params.id)}, function(err, docs){
console.log(docs);
res.json(docs);
});
});
app.put('/updatePerson', function(req, res){
console.log("Received updatePerson request");
db.Persons.findAndModify({query: {"_id": new mongojs.ObjectId(req.body._id)},
update: {$set: {name: req.body.name, email: req.body.email, number: req.body.number}}
}, function(err, docs){
console.log(docs);
res.json(docs);
})
});
app.get('/addresses/:id', function(req, res){
console.log('Received findOne person addresses request');
console.log(req.params.id);
db.Persons.findOne({_id: new mongojs.ObjectId(req.params.id)}, function(err, docs){
console.log(docs.addresses);
res.json(docs);
})
});
app.listen(3000);
console.log("server running on port 3000");
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment